Ran cloverage. There is one test failure, which makes me unwilling

to release this.
This commit is contained in:
Simon Brooke 2025-09-24 17:30:28 +01:00
parent ffc6377f91
commit e97ace97c5
4 changed files with 1787 additions and 1496 deletions

File diff suppressed because it is too large Load diff

View file

@ -659,7 +659,7 @@
218               :args (list cell value)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
219&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:type&nbsp;:beowulf}))));;&nbsp;PLUS
219&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:type&nbsp;:beowulf}))))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
220&nbsp;&nbsp;
@ -1352,424 +1352,478 @@
449&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
450&nbsp;&nbsp;(defn&nbsp;PUT
450&nbsp;&nbsp;(defn&nbsp;ATTRIB
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
451&nbsp;&nbsp;&nbsp;&nbsp;&quot;Put&nbsp;this&nbsp;`value`&nbsp;as&nbsp;the&nbsp;value&nbsp;of&nbsp;the&nbsp;property&nbsp;indicated&nbsp;by&nbsp;this&nbsp;`indicator`&nbsp;
451&nbsp;&nbsp;&nbsp;&nbsp;&quot;Destructive&nbsp;append.&nbsp;From&nbsp;page&nbsp;59&nbsp;of&nbsp;the&nbsp;manual:
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
452&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;of&nbsp;this&nbsp;`symbol`.&nbsp;Return&nbsp;`value`&nbsp;on&nbsp;success.
452&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
453&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
453&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;function&nbsp;`attrib`&nbsp;concatenates&nbsp;its&nbsp;two&nbsp;arguments&nbsp;by&nbsp;changing&nbsp;the&nbsp;last&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
454&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NOTE&nbsp;THAT&nbsp;there&nbsp;is&nbsp;no&nbsp;`PUT`&nbsp;defined&nbsp;in&nbsp;the&nbsp;manual,&nbsp;but&nbsp;it&nbsp;would&nbsp;have&nbsp;been&nbsp;
454&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;element&nbsp;of&nbsp;its&nbsp;first&nbsp;argument&nbsp;to&nbsp;point&nbsp;to&nbsp;the&nbsp;second&nbsp;argument.&nbsp;Thus&nbsp;it
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
455&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;easy&nbsp;to&nbsp;have&nbsp;defined&nbsp;it&nbsp;so&nbsp;I&nbsp;don&#x27;t&nbsp;think&nbsp;this&nbsp;fully&nbsp;counts&nbsp;as&nbsp;an&nbsp;extension.&quot;
455&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;commonly&nbsp;used&nbsp;to&nbsp;tack&nbsp;something&nbsp;onto&nbsp;the&nbsp;end&nbsp;of&nbsp;a&nbsp;property&nbsp;list.&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
456&nbsp;&nbsp;&nbsp;&nbsp;[symbol&nbsp;indicator&nbsp;value]
456&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;value&nbsp;of&nbsp;`attrib`&nbsp;is&nbsp;the&nbsp;second&nbsp;argument.
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
457&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
458&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;For&nbsp;example
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
459&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;```
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
460&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;attrib[FF;&nbsp;(EXPR&nbsp;(LAMBDA&nbsp;(X)&nbsp;(COND&nbsp;((ATOM&nbsp;X)&nbsp;X)&nbsp;(T&nbsp;(FF&nbsp;(CAR&nbsp;x))))))]
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
461&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;```
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
462&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;would&nbsp;put&nbsp;EXPR&nbsp;followed&nbsp;by&nbsp;the&nbsp;LAMBDA&nbsp;expression&nbsp;for&nbsp;FF&nbsp;onto&nbsp;the&nbsp;end&nbsp;of&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
463&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;property&nbsp;list&nbsp;for&nbsp;FF.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
464&nbsp;&nbsp;&nbsp;&nbsp;[x&nbsp;e]
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
465&nbsp;&nbsp;&nbsp;&nbsp;(loop&nbsp;[l&nbsp;x]
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
466&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(cond
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
457&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[binding&nbsp;(ASSOC&nbsp;symbol&nbsp;@oblist)]
</span><br/>
<span class="covered" title="5 out of 5 forms covered">
458&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(instance?&nbsp;ConsCell&nbsp;binding)
467&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(instance?&nbsp;ConsCell&nbsp;(CDR&nbsp;l))&nbsp;(recur&nbsp;(CDR&nbsp;l))
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
459&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[prop&nbsp;(hit-or-miss-assoc&nbsp;indicator&nbsp;(CDDR&nbsp;binding))]
468&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else&nbsp;(when&nbsp;(RPLACD&nbsp;l&nbsp;e)&nbsp;e))))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
469&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
470&nbsp;&nbsp;(defn&nbsp;PUT
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
471&nbsp;&nbsp;&nbsp;&nbsp;&quot;Put&nbsp;this&nbsp;`value`&nbsp;as&nbsp;the&nbsp;value&nbsp;of&nbsp;the&nbsp;property&nbsp;indicated&nbsp;by&nbsp;this&nbsp;`indicator`&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
472&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;of&nbsp;this&nbsp;`symbol`.&nbsp;Return&nbsp;`value`&nbsp;on&nbsp;success.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
473&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
474&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NOTE&nbsp;THAT&nbsp;there&nbsp;is&nbsp;no&nbsp;`PUT`&nbsp;defined&nbsp;in&nbsp;the&nbsp;manual,&nbsp;but&nbsp;it&nbsp;would&nbsp;have&nbsp;been&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
475&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;easy&nbsp;to&nbsp;have&nbsp;defined&nbsp;it&nbsp;so&nbsp;I&nbsp;don&#x27;t&nbsp;think&nbsp;this&nbsp;fully&nbsp;counts&nbsp;as&nbsp;an&nbsp;extension.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
476&nbsp;&nbsp;&nbsp;&nbsp;[symbol&nbsp;indicator&nbsp;value]
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
477&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[binding&nbsp;(ASSOC&nbsp;symbol&nbsp;@oblist)]
</span><br/>
<span class="covered" title="5 out of 5 forms covered">
460&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(instance?&nbsp;ConsCell&nbsp;prop)
478&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(instance?&nbsp;ConsCell&nbsp;binding)
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
479&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[prop&nbsp;(hit-or-miss-assoc&nbsp;indicator&nbsp;(CDDR&nbsp;binding))]
</span><br/>
<span class="covered" title="5 out of 5 forms covered">
480&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(instance?&nbsp;ConsCell&nbsp;prop)
</span><br/>
<span class="covered" title="6 out of 6 forms covered">
461&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(RPLACA&nbsp;(CDR&nbsp;prop)&nbsp;value)
481&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(RPLACA&nbsp;(CDR&nbsp;prop)&nbsp;value)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
482&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;&nbsp;The&nbsp;implication&nbsp;is&nbsp;ATTRIB&nbsp;was&nbsp;used&nbsp;here,&nbsp;but&nbsp;I&nbsp;have&nbsp;not&nbsp;made&nbsp;that
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
483&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;&nbsp;work&nbsp;and&nbsp;this&nbsp;does&nbsp;work,&nbsp;so&nbsp;if&nbsp;it&nbsp;ain&#x27;t&nbsp;broke&nbsp;don&#x27;t&nbsp;fix&nbsp;it.
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
462&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(RPLACD&nbsp;binding
484&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(RPLACD&nbsp;binding
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
463&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
485&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
464&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;magic-marker
486&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;magic-marker
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
465&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
487&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
466&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;indicator
488&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;indicator
</span><br/>
<span class="covered" title="6 out of 6 forms covered">
467&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell&nbsp;value&nbsp;(CDDR&nbsp;binding)))))))
489&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell&nbsp;value&nbsp;(CDDR&nbsp;binding)))))))
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
468&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(swap!
490&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(swap!
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
469&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;oblist
491&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;oblist
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
470&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(fn&nbsp;[ob&nbsp;s&nbsp;p&nbsp;v]
492&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(fn&nbsp;[ob&nbsp;s&nbsp;p&nbsp;v]
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
471&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
493&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="8 out of 8 forms covered">
472&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-beowulf-list&nbsp;(list&nbsp;s&nbsp;magic-marker&nbsp;p&nbsp;v))
494&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-beowulf-list&nbsp;(list&nbsp;s&nbsp;magic-marker&nbsp;p&nbsp;v))
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
473&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ob))
495&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ob))
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
474&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;symbol&nbsp;indicator&nbsp;value)))
496&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;symbol&nbsp;indicator&nbsp;value)))
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
475&nbsp;&nbsp;&nbsp;&nbsp;value)
497&nbsp;&nbsp;&nbsp;&nbsp;value)
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
476&nbsp;&nbsp;
498&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
477&nbsp;&nbsp;(defn&nbsp;GET
499&nbsp;&nbsp;(defn&nbsp;GET
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
478&nbsp;&nbsp;&nbsp;&nbsp;&quot;From&nbsp;the&nbsp;manual:
500&nbsp;&nbsp;&nbsp;&nbsp;&quot;From&nbsp;the&nbsp;manual:
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
479&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
501&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
480&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#x27;`get`&nbsp;is&nbsp;somewhat&nbsp;like&nbsp;`prop`;&nbsp;however&nbsp;its&nbsp;value&nbsp;is&nbsp;car&nbsp;of&nbsp;the&nbsp;rest&nbsp;of
502&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#x27;`get`&nbsp;is&nbsp;somewhat&nbsp;like&nbsp;`prop`;&nbsp;however&nbsp;its&nbsp;value&nbsp;is&nbsp;car&nbsp;of&nbsp;the&nbsp;rest&nbsp;of
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
481&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;list&nbsp;if&nbsp;the&nbsp;`indicator`&nbsp;is&nbsp;found,&nbsp;and&nbsp;NIL&nbsp;otherwise.&#x27;
503&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;list&nbsp;if&nbsp;the&nbsp;`indicator`&nbsp;is&nbsp;found,&nbsp;and&nbsp;NIL&nbsp;otherwise.&#x27;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
482&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
504&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
483&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;It&#x27;s&nbsp;clear&nbsp;that&nbsp;`GET`&nbsp;is&nbsp;expected&nbsp;to&nbsp;be&nbsp;defined&nbsp;in&nbsp;terms&nbsp;of&nbsp;`PROP`,&nbsp;but
505&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;It&#x27;s&nbsp;clear&nbsp;that&nbsp;`GET`&nbsp;is&nbsp;expected&nbsp;to&nbsp;be&nbsp;defined&nbsp;in&nbsp;terms&nbsp;of&nbsp;`PROP`,&nbsp;but
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
484&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;we&nbsp;can&#x27;t&nbsp;implement&nbsp;`PROP`&nbsp;here&nbsp;because&nbsp;we&nbsp;lack&nbsp;`EVAL`;&nbsp;and&nbsp;we&nbsp;can&#x27;t&nbsp;have
506&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;we&nbsp;can&#x27;t&nbsp;implement&nbsp;`PROP`&nbsp;here&nbsp;because&nbsp;we&nbsp;lack&nbsp;`EVAL`;&nbsp;and&nbsp;we&nbsp;can&#x27;t&nbsp;have
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
485&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`EVAL`&nbsp;here&nbsp;because&nbsp;both&nbsp;it&nbsp;and&nbsp;`APPLY`&nbsp;depends&nbsp;on&nbsp;`GET`.
507&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`EVAL`&nbsp;here&nbsp;because&nbsp;both&nbsp;it&nbsp;and&nbsp;`APPLY`&nbsp;depends&nbsp;on&nbsp;`GET`.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
486&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
508&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
487&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OK,&nbsp;It&#x27;s&nbsp;worse&nbsp;than&nbsp;that:&nbsp;the&nbsp;statement&nbsp;of&nbsp;the&nbsp;definition&nbsp;of&nbsp;`GET`&nbsp;(and&nbsp;
509&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;OK,&nbsp;It&#x27;s&nbsp;worse&nbsp;than&nbsp;that:&nbsp;the&nbsp;statement&nbsp;of&nbsp;the&nbsp;definition&nbsp;of&nbsp;`GET`&nbsp;(and&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
488&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;of)&nbsp;`PROP`&nbsp;on&nbsp;page&nbsp;59&nbsp;says&nbsp;that&nbsp;the&nbsp;first&nbsp;argument&nbsp;to&nbsp;each&nbsp;must&nbsp;be&nbsp;a&nbsp;list;
510&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;of)&nbsp;`PROP`&nbsp;on&nbsp;page&nbsp;59&nbsp;says&nbsp;that&nbsp;the&nbsp;first&nbsp;argument&nbsp;to&nbsp;each&nbsp;must&nbsp;be&nbsp;a&nbsp;list;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
489&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;But&nbsp;the&nbsp;in&nbsp;the&nbsp;definition&nbsp;of&nbsp;`ASSOC`&nbsp;on&nbsp;page&nbsp;70,&nbsp;when&nbsp;`GET`&nbsp;is&nbsp;called&nbsp;its
511&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;But&nbsp;the&nbsp;in&nbsp;the&nbsp;definition&nbsp;of&nbsp;`ASSOC`&nbsp;on&nbsp;page&nbsp;70,&nbsp;when&nbsp;`GET`&nbsp;is&nbsp;called&nbsp;its
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
490&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;first&nbsp;argument&nbsp;is&nbsp;always&nbsp;an&nbsp;atom.&nbsp;Since&nbsp;it&#x27;s&nbsp;`ASSOC`&nbsp;and&nbsp;`EVAL`&nbsp;which&nbsp;I&nbsp;
512&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;first&nbsp;argument&nbsp;is&nbsp;always&nbsp;an&nbsp;atom.&nbsp;Since&nbsp;it&#x27;s&nbsp;`ASSOC`&nbsp;and&nbsp;`EVAL`&nbsp;which&nbsp;I&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
491&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;need&nbsp;to&nbsp;make&nbsp;work,&nbsp;I&#x27;m&nbsp;going&nbsp;to&nbsp;assume&nbsp;that&nbsp;page&nbsp;59&nbsp;is&nbsp;wrong.&quot;
513&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;need&nbsp;to&nbsp;make&nbsp;work,&nbsp;I&#x27;m&nbsp;going&nbsp;to&nbsp;assume&nbsp;that&nbsp;page&nbsp;59&nbsp;is&nbsp;wrong.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
492&nbsp;&nbsp;&nbsp;&nbsp;[symbol&nbsp;indicator]
514&nbsp;&nbsp;&nbsp;&nbsp;[symbol&nbsp;indicator]
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
493&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[binding&nbsp;(ASSOC&nbsp;symbol&nbsp;@oblist)
515&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[binding&nbsp;(ASSOC&nbsp;symbol&nbsp;@oblist)
</span><br/>
<span class="partial" title="2 out of 3 forms covered">
494&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val&nbsp;(cond
516&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val&nbsp;(cond
</span><br/>
<span class="covered" title="4 out of 4 forms covered">
495&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(=&nbsp;binding&nbsp;NIL)&nbsp;NIL
517&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(=&nbsp;binding&nbsp;NIL)&nbsp;NIL
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
496&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(=&nbsp;magic-marker
518&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(=&nbsp;magic-marker
</span><br/>
<span class="covered" title="5 out of 5 forms covered">
497&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;binding))&nbsp;(loop&nbsp;[b&nbsp;binding]
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
498&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;&nbsp;&nbsp;(println&nbsp;&quot;GET&nbsp;loop,&nbsp;seeking&nbsp;&quot;&nbsp;indicator&nbsp;&quot;:&quot;)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
499&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;&nbsp;&nbsp;(pretty-print&nbsp;b)
</span><br/>
<span class="covered" title="5 out of 5 forms covered">
500&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(instance?&nbsp;ConsCell&nbsp;b)
<span class="covered" title="8 out of 8 forms covered">
519&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;binding))&nbsp;(let&nbsp;[p&nbsp;(hit-or-miss-assoc&nbsp;indicator&nbsp;binding)]
</span><br/>
<span class="covered" title="6 out of 6 forms covered">
501&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(=&nbsp;(CAR&nbsp;b)&nbsp;indicator)
520&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if-not&nbsp;(=&nbsp;NIL&nbsp;p)
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
502&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;b)&nbsp;;;&nbsp;&lt;-&nbsp;this&nbsp;is&nbsp;what&nbsp;we&nbsp;should&nbsp;actually&nbsp;be&nbsp;returning
521&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;p)
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
503&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(recur&nbsp;(CDR&nbsp;b)))
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
504&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NIL))
522&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NIL))
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
505&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else&nbsp;(throw
523&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else&nbsp;(throw
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
506&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(ex-info&nbsp;&quot;Misformatted&nbsp;property&nbsp;list&nbsp;(missing&nbsp;magic&nbsp;marker)&quot;
524&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(ex-info&nbsp;&quot;Misformatted&nbsp;property&nbsp;list&nbsp;(missing&nbsp;magic&nbsp;marker)&quot;
</span><br/>
<span class="not-covered" title="0 out of 8 forms covered">
507&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{:phase&nbsp;:host
525&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{:phase&nbsp;:host
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
508&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:function&nbsp;:get
526&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:function&nbsp;:get
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
509&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:args&nbsp;(list&nbsp;symbol&nbsp;indicator)
527&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:args&nbsp;(list&nbsp;symbol&nbsp;indicator)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
510&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:type&nbsp;:beowulf})))]
528&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:type&nbsp;:beowulf})))]
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
511&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;&nbsp;(println&nbsp;&quot;&lt;&lt;&nbsp;GET&nbsp;returning:&nbsp;&quot;&nbsp;val)
529&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;;;&nbsp;(println&nbsp;&quot;&lt;&lt;&nbsp;GET&nbsp;returning:&nbsp;&quot;&nbsp;val)
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
512&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val))
530&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;val))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
513&nbsp;&nbsp;
531&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
514&nbsp;&nbsp;(defn&nbsp;DEFLIST
532&nbsp;&nbsp;(defn&nbsp;DEFLIST
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
515&nbsp;&nbsp;&nbsp;&nbsp;&quot;For&nbsp;each&nbsp;pair&nbsp;in&nbsp;this&nbsp;association&nbsp;list&nbsp;`a-list`,&nbsp;set&nbsp;the&nbsp;property&nbsp;with&nbsp;this
533&nbsp;&nbsp;&nbsp;&nbsp;&quot;For&nbsp;each&nbsp;pair&nbsp;in&nbsp;this&nbsp;association&nbsp;list&nbsp;`a-list`,&nbsp;set&nbsp;the&nbsp;property&nbsp;with&nbsp;this
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
516&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`indicator`&nbsp;of&nbsp;the&nbsp;symbol&nbsp;which&nbsp;is&nbsp;the&nbsp;first&nbsp;element&nbsp;of&nbsp;the&nbsp;pair&nbsp;to&nbsp;the&nbsp;
534&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;`indicator`&nbsp;of&nbsp;the&nbsp;symbol&nbsp;which&nbsp;is&nbsp;the&nbsp;first&nbsp;element&nbsp;of&nbsp;the&nbsp;pair&nbsp;to&nbsp;the&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
517&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value&nbsp;which&nbsp;is&nbsp;the&nbsp;second&nbsp;element&nbsp;of&nbsp;the&nbsp;pair.&nbsp;See&nbsp;page&nbsp;58&nbsp;of&nbsp;the&nbsp;manual.&quot;
535&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value&nbsp;which&nbsp;is&nbsp;the&nbsp;second&nbsp;element&nbsp;of&nbsp;the&nbsp;pair.&nbsp;See&nbsp;page&nbsp;58&nbsp;of&nbsp;the&nbsp;manual.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
518&nbsp;&nbsp;&nbsp;&nbsp;[a-list&nbsp;indicator]
536&nbsp;&nbsp;&nbsp;&nbsp;[a-list&nbsp;indicator]
</span><br/>
<span class="not-covered" title="0 out of 2 forms covered">
519&nbsp;&nbsp;&nbsp;&nbsp;(doall
537&nbsp;&nbsp;&nbsp;&nbsp;(doall
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
520&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map
538&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map
</span><br/>
<span class="not-covered" title="0 out of 14 forms covered">
521&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(when&nbsp;(PUT&nbsp;(CAR&nbsp;%)&nbsp;indicator&nbsp;(CDR&nbsp;%))&nbsp;(CAR&nbsp;%))
539&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(when&nbsp;(PUT&nbsp;(CAR&nbsp;%)&nbsp;indicator&nbsp;(CDR&nbsp;%))&nbsp;(CAR&nbsp;%))
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
522&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a-list)))
540&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a-list)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
523&nbsp;&nbsp;
541&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
524&nbsp;&nbsp;(defn&nbsp;DEFINE
542&nbsp;&nbsp;(defn&nbsp;DEFINE
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
525&nbsp;&nbsp;&nbsp;&nbsp;&quot;Bootstrap-only&nbsp;version&nbsp;of&nbsp;`DEFINE`&nbsp;which,&nbsp;post&nbsp;boostrap,&nbsp;can&nbsp;be&nbsp;overwritten&nbsp;
543&nbsp;&nbsp;&nbsp;&nbsp;&quot;Bootstrap-only&nbsp;version&nbsp;of&nbsp;`DEFINE`&nbsp;which,&nbsp;post&nbsp;boostrap,&nbsp;can&nbsp;be&nbsp;overwritten&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
526&nbsp;&nbsp;&nbsp;&nbsp;in&nbsp;LISP.&nbsp;
544&nbsp;&nbsp;&nbsp;&nbsp;in&nbsp;LISP.&nbsp;
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
527&nbsp;&nbsp;
545&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
528&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;single&nbsp;argument&nbsp;to&nbsp;`DEFINE`&nbsp;should&nbsp;be&nbsp;an&nbsp;association&nbsp;list&nbsp;of&nbsp;symbols&nbsp;to
546&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;single&nbsp;argument&nbsp;to&nbsp;`DEFINE`&nbsp;should&nbsp;be&nbsp;an&nbsp;association&nbsp;list&nbsp;of&nbsp;symbols&nbsp;to
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
529&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lambda&nbsp;functions.&nbsp;See&nbsp;page&nbsp;58&nbsp;of&nbsp;the&nbsp;manual.&quot;
547&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lambda&nbsp;functions.&nbsp;See&nbsp;page&nbsp;58&nbsp;of&nbsp;the&nbsp;manual.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
530&nbsp;&nbsp;&nbsp;&nbsp;[a-list]
548&nbsp;&nbsp;&nbsp;&nbsp;[a-list]
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
531&nbsp;&nbsp;&nbsp;&nbsp;(DEFLIST&nbsp;a-list&nbsp;&#x27;EXPR))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
532&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
533&nbsp;&nbsp;(defn&nbsp;SET
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
534&nbsp;&nbsp;&nbsp;&nbsp;&quot;Implementation&nbsp;of&nbsp;SET&nbsp;in&nbsp;Clojure.&nbsp;Add&nbsp;to&nbsp;the&nbsp;`oblist`&nbsp;a&nbsp;binding&nbsp;of&nbsp;the
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
535&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value&nbsp;of&nbsp;`var`&nbsp;to&nbsp;the&nbsp;value&nbsp;of&nbsp;`val`.&nbsp;NOTE&nbsp;WELL:&nbsp;this&nbsp;is&nbsp;not&nbsp;SETQ!&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
536&nbsp;&nbsp;&nbsp;&nbsp;[symbol&nbsp;val]
</span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
537&nbsp;&nbsp;&nbsp;&nbsp;(PUT&nbsp;symbol&nbsp;&#x27;APVAL&nbsp;val))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
538&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
539&nbsp;&nbsp;;;;;&nbsp;TRACE&nbsp;and&nbsp;friends&nbsp;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
540&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
541&nbsp;&nbsp;(def&nbsp;traced-symbols
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
542&nbsp;&nbsp;&nbsp;&nbsp;&quot;Symbols&nbsp;currently&nbsp;being&nbsp;traced.&quot;
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
543&nbsp;&nbsp;&nbsp;&nbsp;(atom&nbsp;#{}))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
544&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
545&nbsp;&nbsp;(defn&nbsp;traced?
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
546&nbsp;&nbsp;&nbsp;&nbsp;&quot;Return&nbsp;`true`&nbsp;iff&nbsp;`s`&nbsp;is&nbsp;a&nbsp;symbol&nbsp;currently&nbsp;being&nbsp;traced,&nbsp;else&nbsp;`nil`.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
547&nbsp;&nbsp;&nbsp;&nbsp;[s]
</span><br/>
<span class="partial" title="7 out of 8 forms covered">
548&nbsp;&nbsp;&nbsp;&nbsp;(try&nbsp;(contains?&nbsp;@traced-symbols&nbsp;s)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
549&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Throwable&nbsp;_&nbsp;nil)))
549&nbsp;&nbsp;&nbsp;&nbsp;(DEFLIST&nbsp;a-list&nbsp;&#x27;EXPR))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
550&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
551&nbsp;&nbsp;(defn&nbsp;TRACE
551&nbsp;&nbsp;(defn&nbsp;SET
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
552&nbsp;&nbsp;&nbsp;&nbsp;&quot;Add&nbsp;this&nbsp;`s`&nbsp;to&nbsp;the&nbsp;set&nbsp;of&nbsp;symbols&nbsp;currently&nbsp;being&nbsp;traced.&nbsp;If&nbsp;`s`
552&nbsp;&nbsp;&nbsp;&nbsp;&quot;Implementation&nbsp;of&nbsp;SET&nbsp;in&nbsp;Clojure.&nbsp;Add&nbsp;to&nbsp;the&nbsp;`oblist`&nbsp;a&nbsp;binding&nbsp;of&nbsp;the
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
553&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;not&nbsp;a&nbsp;symbol&nbsp;or&nbsp;sequence&nbsp;of&nbsp;symbols,&nbsp;does&nbsp;nothing.&quot;
553&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;value&nbsp;of&nbsp;`var`&nbsp;to&nbsp;the&nbsp;value&nbsp;of&nbsp;`val`.&nbsp;NOTE&nbsp;WELL:&nbsp;this&nbsp;is&nbsp;not&nbsp;SETQ!&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
554&nbsp;&nbsp;&nbsp;&nbsp;[s]
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
555&nbsp;&nbsp;&nbsp;&nbsp;(swap!&nbsp;traced-symbols
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
556&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(cond
</span><br/>
<span class="not-covered" title="0 out of 7 forms covered">
557&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(symbol?&nbsp;s)&nbsp;(conj&nbsp;%&nbsp;s)
</span><br/>
<span class="not-covered" title="0 out of 17 forms covered">
558&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(and&nbsp;(seq?&nbsp;s)&nbsp;(every?&nbsp;symbol?&nbsp;s))&nbsp;(union&nbsp;%&nbsp;(set&nbsp;s))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
559&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else&nbsp;%)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
560&nbsp;&nbsp;
</span><br/>
<span class="partial" title="1 out of 3 forms covered">
561&nbsp;&nbsp;(defn&nbsp;UNTRACE
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
562&nbsp;&nbsp;&nbsp;&nbsp;&quot;Remove&nbsp;this&nbsp;`s`&nbsp;from&nbsp;the&nbsp;set&nbsp;of&nbsp;symbols&nbsp;currently&nbsp;being&nbsp;traced.&nbsp;If&nbsp;`s`
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
563&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;not&nbsp;a&nbsp;symbol&nbsp;or&nbsp;sequence&nbsp;of&nbsp;symbols,&nbsp;does&nbsp;nothing.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
564&nbsp;&nbsp;&nbsp;&nbsp;[s]
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
565&nbsp;&nbsp;&nbsp;&nbsp;(cond
</span><br/>
<span class="not-covered" title="0 out of 16 forms covered">
566&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(symbol?&nbsp;s)&nbsp;(swap!&nbsp;traced-symbols&nbsp;#(set&nbsp;(remove&nbsp;(fn&nbsp;[x]&nbsp;(=&nbsp;s&nbsp;x))&nbsp;%)))
</span><br/>
<span class="not-covered" title="0 out of 15 forms covered">
567&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(and&nbsp;(seq?&nbsp;s)&nbsp;(every?&nbsp;symbol?&nbsp;s))&nbsp;(map&nbsp;UNTRACE&nbsp;s))
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
568&nbsp;&nbsp;&nbsp;&nbsp;@traced-symbols)
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
569&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
570&nbsp;&nbsp;;;;;&nbsp;Extensions&nbsp;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
571&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
572&nbsp;&nbsp;(defn&nbsp;DOC
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
573&nbsp;&nbsp;&nbsp;&nbsp;&quot;Open&nbsp;the&nbsp;page&nbsp;for&nbsp;this&nbsp;`symbol`&nbsp;in&nbsp;the&nbsp;Lisp&nbsp;1.5&nbsp;manual,&nbsp;if&nbsp;known,&nbsp;in&nbsp;the&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
574&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default&nbsp;web&nbsp;browser.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
575&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
576&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;this&nbsp;is&nbsp;an&nbsp;extension&nbsp;function,&nbsp;not&nbsp;available&nbsp;in&nbsp;strct&nbsp;mode.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
577&nbsp;&nbsp;&nbsp;&nbsp;[symbol]
</span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
578&nbsp;&nbsp;&nbsp;&nbsp;(when&nbsp;(lax?&nbsp;&#x27;DOC)
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
579&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(open-doc&nbsp;symbol)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
580&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
581&nbsp;&nbsp;(defn&nbsp;CONSP
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
582&nbsp;&nbsp;&nbsp;&nbsp;&quot;Return&nbsp;`T`&nbsp;if&nbsp;object&nbsp;`o`&nbsp;is&nbsp;a&nbsp;cons&nbsp;cell,&nbsp;else&nbsp;`F`.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
583&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
584&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;this&nbsp;is&nbsp;an&nbsp;extension&nbsp;function,&nbsp;not&nbsp;available&nbsp;in&nbsp;strct&nbsp;mode.&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
585&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;I&nbsp;believe&nbsp;that&nbsp;Lisp&nbsp;1.5&nbsp;did&nbsp;not&nbsp;have&nbsp;any&nbsp;mechanism&nbsp;for&nbsp;testing&nbsp;whether&nbsp;an
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
586&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;argument&nbsp;was,&nbsp;or&nbsp;was&nbsp;not,&nbsp;a&nbsp;cons&nbsp;cell.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
587&nbsp;&nbsp;&nbsp;&nbsp;[o]
554&nbsp;&nbsp;&nbsp;&nbsp;[symbol&nbsp;val]
</span><br/>
<span class="covered" title="5 out of 5 forms covered">
588&nbsp;&nbsp;&nbsp;&nbsp;(when&nbsp;(lax?&nbsp;&#x27;CONSP)
555&nbsp;&nbsp;&nbsp;&nbsp;(PUT&nbsp;symbol&nbsp;&#x27;APVAL&nbsp;val))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
556&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
557&nbsp;&nbsp;;;;;&nbsp;TRACE&nbsp;and&nbsp;friends&nbsp;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
558&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
559&nbsp;&nbsp;(def&nbsp;traced-symbols
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
560&nbsp;&nbsp;&nbsp;&nbsp;&quot;Symbols&nbsp;currently&nbsp;being&nbsp;traced.&quot;
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
561&nbsp;&nbsp;&nbsp;&nbsp;(atom&nbsp;#{}))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
562&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
563&nbsp;&nbsp;(defn&nbsp;traced?
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
564&nbsp;&nbsp;&nbsp;&nbsp;&quot;Return&nbsp;`true`&nbsp;iff&nbsp;`s`&nbsp;is&nbsp;a&nbsp;symbol&nbsp;currently&nbsp;being&nbsp;traced,&nbsp;else&nbsp;`nil`.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
565&nbsp;&nbsp;&nbsp;&nbsp;[s]
</span><br/>
<span class="partial" title="7 out of 8 forms covered">
566&nbsp;&nbsp;&nbsp;&nbsp;(try&nbsp;(contains?&nbsp;@traced-symbols&nbsp;s)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
567&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Throwable&nbsp;_&nbsp;nil)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
568&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
569&nbsp;&nbsp;(defn&nbsp;TRACE
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
570&nbsp;&nbsp;&nbsp;&nbsp;&quot;Add&nbsp;this&nbsp;`s`&nbsp;to&nbsp;the&nbsp;set&nbsp;of&nbsp;symbols&nbsp;currently&nbsp;being&nbsp;traced.&nbsp;If&nbsp;`s`
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
571&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;not&nbsp;a&nbsp;symbol&nbsp;or&nbsp;sequence&nbsp;of&nbsp;symbols,&nbsp;does&nbsp;nothing.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
572&nbsp;&nbsp;&nbsp;&nbsp;[s]
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
573&nbsp;&nbsp;&nbsp;&nbsp;(swap!&nbsp;traced-symbols
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
574&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(cond
</span><br/>
<span class="not-covered" title="0 out of 7 forms covered">
575&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(symbol?&nbsp;s)&nbsp;(conj&nbsp;%&nbsp;s)
</span><br/>
<span class="not-covered" title="0 out of 17 forms covered">
576&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(and&nbsp;(seq?&nbsp;s)&nbsp;(every?&nbsp;symbol?&nbsp;s))&nbsp;(union&nbsp;%&nbsp;(set&nbsp;s))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
577&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else&nbsp;%)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
578&nbsp;&nbsp;
</span><br/>
<span class="partial" title="1 out of 3 forms covered">
579&nbsp;&nbsp;(defn&nbsp;UNTRACE
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
580&nbsp;&nbsp;&nbsp;&nbsp;&quot;Remove&nbsp;this&nbsp;`s`&nbsp;from&nbsp;the&nbsp;set&nbsp;of&nbsp;symbols&nbsp;currently&nbsp;being&nbsp;traced.&nbsp;If&nbsp;`s`
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
581&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;is&nbsp;not&nbsp;a&nbsp;symbol&nbsp;or&nbsp;sequence&nbsp;of&nbsp;symbols,&nbsp;does&nbsp;nothing.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
582&nbsp;&nbsp;&nbsp;&nbsp;[s]
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
583&nbsp;&nbsp;&nbsp;&nbsp;(cond
</span><br/>
<span class="not-covered" title="0 out of 16 forms covered">
584&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(symbol?&nbsp;s)&nbsp;(swap!&nbsp;traced-symbols&nbsp;#(set&nbsp;(remove&nbsp;(fn&nbsp;[x]&nbsp;(=&nbsp;s&nbsp;x))&nbsp;%)))
</span><br/>
<span class="not-covered" title="0 out of 15 forms covered">
585&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(and&nbsp;(seq?&nbsp;s)&nbsp;(every?&nbsp;symbol?&nbsp;s))&nbsp;(map&nbsp;UNTRACE&nbsp;s))
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
586&nbsp;&nbsp;&nbsp;&nbsp;@traced-symbols)
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
587&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
588&nbsp;&nbsp;;;;;&nbsp;Extensions&nbsp;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
589&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
590&nbsp;&nbsp;(defn&nbsp;DOC
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
591&nbsp;&nbsp;&nbsp;&nbsp;&quot;Open&nbsp;the&nbsp;page&nbsp;for&nbsp;this&nbsp;`symbol`&nbsp;in&nbsp;the&nbsp;Lisp&nbsp;1.5&nbsp;manual,&nbsp;if&nbsp;known,&nbsp;in&nbsp;the&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
592&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;default&nbsp;web&nbsp;browser.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
593&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
594&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;this&nbsp;is&nbsp;an&nbsp;extension&nbsp;function,&nbsp;not&nbsp;available&nbsp;in&nbsp;strct&nbsp;mode.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
595&nbsp;&nbsp;&nbsp;&nbsp;[symbol]
</span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
596&nbsp;&nbsp;&nbsp;&nbsp;(when&nbsp;(lax?&nbsp;&#x27;DOC)
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
597&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(open-doc&nbsp;symbol)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
598&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
599&nbsp;&nbsp;(defn&nbsp;CONSP
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
600&nbsp;&nbsp;&nbsp;&nbsp;&quot;Return&nbsp;`T`&nbsp;if&nbsp;object&nbsp;`o`&nbsp;is&nbsp;a&nbsp;cons&nbsp;cell,&nbsp;else&nbsp;`F`.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
601&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
602&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;this&nbsp;is&nbsp;an&nbsp;extension&nbsp;function,&nbsp;not&nbsp;available&nbsp;in&nbsp;strct&nbsp;mode.&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
603&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;I&nbsp;believe&nbsp;that&nbsp;Lisp&nbsp;1.5&nbsp;did&nbsp;not&nbsp;have&nbsp;any&nbsp;mechanism&nbsp;for&nbsp;testing&nbsp;whether&nbsp;an
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
604&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;argument&nbsp;was,&nbsp;or&nbsp;was&nbsp;not,&nbsp;a&nbsp;cons&nbsp;cell.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
605&nbsp;&nbsp;&nbsp;&nbsp;[o]
</span><br/>
<span class="covered" title="5 out of 5 forms covered">
606&nbsp;&nbsp;&nbsp;&nbsp;(when&nbsp;(lax?&nbsp;&#x27;CONSP)
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
589&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(instance?&nbsp;ConsCell&nbsp;o)&nbsp;&#x27;T&nbsp;&#x27;F)))
607&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(if&nbsp;(instance?&nbsp;ConsCell&nbsp;o)&nbsp;&#x27;T&nbsp;&#x27;F)))
</span><br/>
</body>
</html>

View file

@ -283,239 +283,248 @@
<span class="not-tracked" title="0 out of 0 forms covered">
093&nbsp;&nbsp;&nbsp;&nbsp;([filepath]
</span><br/>
<span class="not-covered" title="0 out of 7 forms covered">
094&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(spit&nbsp;(full-path&nbsp;(str&nbsp;filepath))
<span class="not-covered" title="0 out of 6 forms covered">
094&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[destination&nbsp;(full-path&nbsp;(str&nbsp;filepath))]
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
095&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(spit&nbsp;destination
</span><br/>
<span class="not-covered" title="0 out of 15 forms covered">
095&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(with-out-str
096&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(with-out-str
</span><br/>
<span class="not-covered" title="0 out of 9 forms covered">
096&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(apply&nbsp;str&nbsp;(repeat&nbsp;79&nbsp;&quot;;&quot;)))
097&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(apply&nbsp;str&nbsp;(repeat&nbsp;79&nbsp;&quot;;&quot;)))
</span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
097&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(format&nbsp;&quot;;;&nbsp;Beowulf&nbsp;%s&nbsp;Sysout&nbsp;file&nbsp;generated&nbsp;at&nbsp;%s&quot;
098&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(format&nbsp;&quot;;;&nbsp;Beowulf&nbsp;%s&nbsp;Sysout&nbsp;file&nbsp;generated&nbsp;at&nbsp;%s&quot;
</span><br/>
<span class="not-covered" title="0 out of 7 forms covered">
098&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(or&nbsp;(System&#x2F;getProperty&nbsp;&quot;beowulf.version&quot;)&nbsp;&quot;&quot;)
099&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(or&nbsp;(System&#x2F;getProperty&nbsp;&quot;beowulf.version&quot;)&nbsp;&quot;&quot;)
</span><br/>
<span class="not-covered" title="0 out of 2 forms covered">
099&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(local-date-time)))
100&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(local-date-time)))
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
100&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(when&nbsp;(System&#x2F;getenv&nbsp;&quot;USER&quot;)
101&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(when&nbsp;(System&#x2F;getenv&nbsp;&quot;USER&quot;)
</span><br/>
<span class="not-covered" title="0 out of 7 forms covered">
101&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(format&nbsp;&quot;;;&nbsp;generated&nbsp;by&nbsp;%s&quot;&nbsp;(System&#x2F;getenv&nbsp;&quot;USER&quot;))))
102&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(format&nbsp;&quot;;;&nbsp;generated&nbsp;by&nbsp;%s&quot;&nbsp;(System&#x2F;getenv&nbsp;&quot;USER&quot;))))
</span><br/>
<span class="not-covered" title="0 out of 9 forms covered">
102&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(apply&nbsp;str&nbsp;(repeat&nbsp;79&nbsp;&quot;;&quot;)))
103&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;(apply&nbsp;str&nbsp;(repeat&nbsp;79&nbsp;&quot;;&quot;)))
</span><br/>
<span class="not-covered" title="0 out of 2 forms covered">
103&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println)
104&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println)
</span><br/>
<span class="not-covered" title="0 out of 6 forms covered">
104&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[output&nbsp;(safely-wrap-subrs&nbsp;@oblist)]
105&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[output&nbsp;(safely-wrap-subrs&nbsp;@oblist)]
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
105&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(pretty-print&nbsp;output)
106&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(pretty-print&nbsp;output)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
106&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)))))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
107&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
108&nbsp;&nbsp;(defn&nbsp;resolve-subr
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
109&nbsp;&nbsp;&nbsp;&nbsp;&quot;If&nbsp;this&nbsp;oblist&nbsp;`entry`&nbsp;references&nbsp;a&nbsp;subroutine,&nbsp;attempt&nbsp;to&nbsp;fix&nbsp;up&nbsp;that
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
110&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;reference.&quot;
</span><br/>
<span class="partial" title="1 out of 3 forms covered">
111&nbsp;&nbsp;&nbsp;&nbsp;([entry]
</span><br/>
<span class="partial" title="9 out of 12 forms covered">
112&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(or&nbsp;(resolve-subr&nbsp;entry&nbsp;&#x27;SUBR)
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
113&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(resolve-subr&nbsp;entry&nbsp;&#x27;FSUBR)))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
114&nbsp;&nbsp;&nbsp;&nbsp;([entry&nbsp;prop]
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
115&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(cond&nbsp;(=&nbsp;entry&nbsp;NIL)&nbsp;NIL
</span><br/>
<span class="covered" title="6 out of 6 forms covered">
116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(=&nbsp;(CAR&nbsp;entry)&nbsp;prop)&nbsp;(try
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
117&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
118&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CAR&nbsp;entry)
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
119&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
120&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(interpret-qualified-name
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
121&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;entry))
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
122&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CDDR&nbsp;entry)))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
123&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Exception&nbsp;_
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
124&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(print&nbsp;&quot;Warnung:&nbsp;ne&nbsp;can&nbsp;āfinde&nbsp;&quot;
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
125&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;entry))
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
126&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CDDR&nbsp;entry)))
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
127&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="8 out of 8 forms covered">
128&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CAR&nbsp;entry)&nbsp;(resolve-subr&nbsp;(CDR&nbsp;entry))))))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
129&nbsp;&nbsp;
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
130&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
131&nbsp;&nbsp;(defn-&nbsp;resolve-subroutines
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
132&nbsp;&nbsp;&nbsp;&nbsp;&quot;Attempt&nbsp;to&nbsp;fix&nbsp;up&nbsp;the&nbsp;references&nbsp;to&nbsp;subroutines&nbsp;(Clojure&nbsp;functions)&nbsp;among
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
133&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;these&nbsp;`objects`,&nbsp;being&nbsp;new&nbsp;content&nbsp;for&nbsp;the&nbsp;object&nbsp;list.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
134&nbsp;&nbsp;&nbsp;&nbsp;[objects]
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
135&nbsp;&nbsp;&nbsp;&nbsp;(make-beowulf-list
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
136&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
137&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resolve-subr
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
138&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objects)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
139&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
140&nbsp;&nbsp;(defn&nbsp;SYSIN
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
141&nbsp;&nbsp;&nbsp;&nbsp;&quot;Read&nbsp;the&nbsp;contents&nbsp;of&nbsp;the&nbsp;file&nbsp;at&nbsp;this&nbsp;`filename`&nbsp;into&nbsp;the&nbsp;object&nbsp;list.&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
142&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
143&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;the&nbsp;file&nbsp;is&nbsp;not&nbsp;a&nbsp;valid&nbsp;Beowulf&nbsp;sysout&nbsp;file,&nbsp;this&nbsp;will&nbsp;probably&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
144&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;corrupt&nbsp;the&nbsp;system,&nbsp;you&nbsp;have&nbsp;been&nbsp;warned.&nbsp;File&nbsp;paths&nbsp;will&nbsp;be&nbsp;considered&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
145&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;relative&nbsp;to&nbsp;the&nbsp;filepath&nbsp;set&nbsp;when&nbsp;starting&nbsp;Lisp.
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
146&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
147&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;It&nbsp;is&nbsp;intended&nbsp;that&nbsp;sysout&nbsp;files&nbsp;can&nbsp;be&nbsp;read&nbsp;both&nbsp;from&nbsp;resources&nbsp;within
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
148&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;jar&nbsp;file,&nbsp;and&nbsp;from&nbsp;the&nbsp;file&nbsp;system.&nbsp;If&nbsp;a&nbsp;named&nbsp;file&nbsp;exists&nbsp;in&nbsp;both&nbsp;the
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
149&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file&nbsp;system&nbsp;and&nbsp;the&nbsp;resources,&nbsp;the&nbsp;file&nbsp;system&nbsp;will&nbsp;be&nbsp;preferred.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
150&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
151&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;if&nbsp;the&nbsp;provided&nbsp;`filename`&nbsp;does&nbsp;not&nbsp;end&nbsp;with&nbsp;`.lsp`&nbsp;(which,
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
152&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;you&#x27;re&nbsp;writing&nbsp;it&nbsp;from&nbsp;the&nbsp;Lisp&nbsp;REPL,&nbsp;it&nbsp;won&#x27;t),&nbsp;the&nbsp;extension&nbsp;`.lsp`
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
153&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;will&nbsp;be&nbsp;appended.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
154&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
155&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;this&nbsp;is&nbsp;an&nbsp;extension&nbsp;function,&nbsp;not&nbsp;available&nbsp;in&nbsp;strct&nbsp;mode.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
156&nbsp;&nbsp;&nbsp;&nbsp;([]
</span><br/>
<span class="not-covered" title="0 out of 13 forms covered">
157&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(SYSIN&nbsp;(or&nbsp;(:read&nbsp;*options*)&nbsp;(str&nbsp;&quot;resources&#x2F;&quot;&nbsp;default-sysout))))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
158&nbsp;&nbsp;&nbsp;&nbsp;([filename]
</span><br/>
<span class="covered" title="8 out of 8 forms covered">
159&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[fp&nbsp;(file&nbsp;(full-path&nbsp;(str&nbsp;filename)))
</span><br/>
<span class="covered" title="9 out of 9 forms covered">
160&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file&nbsp;(when&nbsp;(and&nbsp;(.exists&nbsp;fp)&nbsp;(.canRead&nbsp;fp))&nbsp;fp)
</span><br/>
<span class="partial" title="4 out of 5 forms covered">
161&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;res&nbsp;(try&nbsp;(resource&nbsp;filename)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
162&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Throwable&nbsp;_&nbsp;nil))
</span><br/>
<span class="covered" title="11 out of 11 forms covered">
163&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;content&nbsp;(try&nbsp;(READ&nbsp;(slurp&nbsp;(or&nbsp;file&nbsp;res)))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
164&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Throwable&nbsp;_
107&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)))
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
165&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(throw&nbsp;(ex-info&nbsp;&quot;Ne&nbsp;can&nbsp;ārǣde&quot;
</span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
166&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{:context&nbsp;&quot;SYSIN&quot;
108&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(println&nbsp;&quot;Saved&nbsp;sysout&nbsp;to&nbsp;&quot;&nbsp;destination)
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
167&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:filename&nbsp;filename
109&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NIL)))
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
168&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:filepath&nbsp;fp}))))]
<span class="blank" title="0 out of 0 forms covered">
110&nbsp;&nbsp;
</span><br/>
<span class="covered" title="4 out of 4 forms covered">
169&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(swap!&nbsp;oblist
<span class="partial" title="2 out of 4 forms covered">
111&nbsp;&nbsp;(defn&nbsp;resolve-subr
</span><br/>
<span class="partial" title="7 out of 10 forms covered">
170&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(when&nbsp;(or&nbsp;%&nbsp;(seq&nbsp;content))
<span class="partial" title="1 out of 3 forms covered">
112&nbsp;&nbsp;&nbsp;&nbsp;&quot;If&nbsp;this&nbsp;oblist&nbsp;`entry`&nbsp;references&nbsp;a&nbsp;subroutine,&nbsp;attempt&nbsp;to&nbsp;fix&nbsp;up&nbsp;that
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
113&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;reference.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
114&nbsp;&nbsp;&nbsp;&nbsp;([entry]
</span><br/>
<span class="partial" title="8 out of 9 forms covered">
115&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(or&nbsp;(resolve-subr&nbsp;entry&nbsp;&#x27;SUBR)
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
116&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(resolve-subr&nbsp;entry&nbsp;&#x27;FSUBR)))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
117&nbsp;&nbsp;&nbsp;&nbsp;([entry&nbsp;prop]
</span><br/>
<span class="covered" title="7 out of 7 forms covered">
118&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(cond&nbsp;(=&nbsp;entry&nbsp;NIL)&nbsp;NIL
</span><br/>
<span class="covered" title="6 out of 6 forms covered">
119&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(=&nbsp;(CAR&nbsp;entry)&nbsp;prop)&nbsp;(try
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
120&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
171&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(resolve-subroutines&nbsp;content))))))
121&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CAR&nbsp;entry)
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
122&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
123&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(interpret-qualified-name
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
124&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;entry))
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
125&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CDDR&nbsp;entry)))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
126&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Exception&nbsp;_
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
127&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(print&nbsp;&quot;Warnung:&nbsp;ne&nbsp;can&nbsp;āfinde&nbsp;&quot;
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
128&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CADR&nbsp;entry))
</span><br/>
<span class="not-covered" title="0 out of 3 forms covered">
129&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CDDR&nbsp;entry)))
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
130&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:else&nbsp;(make-cons-cell
</span><br/>
<span class="covered" title="8 out of 8 forms covered">
131&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(CAR&nbsp;entry)&nbsp;(resolve-subr&nbsp;(CDR&nbsp;entry))))))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
132&nbsp;&nbsp;
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
133&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
134&nbsp;&nbsp;(defn-&nbsp;resolve-subroutines
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
135&nbsp;&nbsp;&nbsp;&nbsp;&quot;Attempt&nbsp;to&nbsp;fix&nbsp;up&nbsp;the&nbsp;references&nbsp;to&nbsp;subroutines&nbsp;(Clojure&nbsp;functions)&nbsp;among
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
136&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;these&nbsp;`objects`,&nbsp;being&nbsp;new&nbsp;content&nbsp;for&nbsp;the&nbsp;object&nbsp;list.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
137&nbsp;&nbsp;&nbsp;&nbsp;[objects]
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
138&nbsp;&nbsp;&nbsp;&nbsp;(make-beowulf-list
</span><br/>
<span class="covered" title="2 out of 2 forms covered">
139&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(map
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
140&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resolve-subr
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
141&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;objects)))
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
142&nbsp;&nbsp;
</span><br/>
<span class="covered" title="1 out of 1 forms covered">
143&nbsp;&nbsp;(defn&nbsp;SYSIN
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
144&nbsp;&nbsp;&nbsp;&nbsp;&quot;Read&nbsp;the&nbsp;contents&nbsp;of&nbsp;the&nbsp;file&nbsp;at&nbsp;this&nbsp;`filename`&nbsp;into&nbsp;the&nbsp;object&nbsp;list.&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
145&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
146&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;the&nbsp;file&nbsp;is&nbsp;not&nbsp;a&nbsp;valid&nbsp;Beowulf&nbsp;sysout&nbsp;file,&nbsp;this&nbsp;will&nbsp;probably&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
147&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;corrupt&nbsp;the&nbsp;system,&nbsp;you&nbsp;have&nbsp;been&nbsp;warned.&nbsp;File&nbsp;paths&nbsp;will&nbsp;be&nbsp;considered&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
148&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;relative&nbsp;to&nbsp;the&nbsp;filepath&nbsp;set&nbsp;when&nbsp;starting&nbsp;Lisp.
</span><br/>
<span class="blank" title="0 out of 0 forms covered">
149&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
150&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;It&nbsp;is&nbsp;intended&nbsp;that&nbsp;sysout&nbsp;files&nbsp;can&nbsp;be&nbsp;read&nbsp;both&nbsp;from&nbsp;resources&nbsp;within
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
151&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;the&nbsp;jar&nbsp;file,&nbsp;and&nbsp;from&nbsp;the&nbsp;file&nbsp;system.&nbsp;If&nbsp;a&nbsp;named&nbsp;file&nbsp;exists&nbsp;in&nbsp;both&nbsp;the
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
152&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file&nbsp;system&nbsp;and&nbsp;the&nbsp;resources,&nbsp;the&nbsp;file&nbsp;system&nbsp;will&nbsp;be&nbsp;preferred.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
153&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
154&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;if&nbsp;the&nbsp;provided&nbsp;`filename`&nbsp;does&nbsp;not&nbsp;end&nbsp;with&nbsp;`.lsp`&nbsp;(which,
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
155&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;you&#x27;re&nbsp;writing&nbsp;it&nbsp;from&nbsp;the&nbsp;Lisp&nbsp;REPL,&nbsp;it&nbsp;won&#x27;t),&nbsp;the&nbsp;extension&nbsp;`.lsp`
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
156&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;will&nbsp;be&nbsp;appended.
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
157&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
158&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;**NOTE&nbsp;THAT**&nbsp;this&nbsp;is&nbsp;an&nbsp;extension&nbsp;function,&nbsp;not&nbsp;available&nbsp;in&nbsp;strct&nbsp;mode.&quot;
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
159&nbsp;&nbsp;&nbsp;&nbsp;([]
</span><br/>
<span class="not-covered" title="0 out of 13 forms covered">
160&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(SYSIN&nbsp;(or&nbsp;(:read&nbsp;*options*)&nbsp;(str&nbsp;&quot;resources&#x2F;&quot;&nbsp;default-sysout))))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
161&nbsp;&nbsp;&nbsp;&nbsp;([filename]
</span><br/>
<span class="covered" title="8 out of 8 forms covered">
162&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(let&nbsp;[fp&nbsp;(file&nbsp;(full-path&nbsp;(str&nbsp;filename)))
</span><br/>
<span class="covered" title="9 out of 9 forms covered">
163&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;file&nbsp;(when&nbsp;(and&nbsp;(.exists&nbsp;fp)&nbsp;(.canRead&nbsp;fp))&nbsp;fp)
</span><br/>
<span class="partial" title="4 out of 5 forms covered">
164&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;res&nbsp;(try&nbsp;(resource&nbsp;filename)
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
165&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Throwable&nbsp;_&nbsp;nil))
</span><br/>
<span class="covered" title="11 out of 11 forms covered">
166&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;content&nbsp;(try&nbsp;(READ&nbsp;(slurp&nbsp;(or&nbsp;file&nbsp;res)))
</span><br/>
<span class="not-tracked" title="0 out of 0 forms covered">
167&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(catch&nbsp;Throwable&nbsp;_
</span><br/>
<span class="not-covered" title="0 out of 4 forms covered">
168&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(throw&nbsp;(ex-info&nbsp;&quot;Ne&nbsp;can&nbsp;ārǣde&quot;
</span><br/>
<span class="not-covered" title="0 out of 5 forms covered">
169&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{:context&nbsp;&quot;SYSIN&quot;
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
170&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:filename&nbsp;filename
</span><br/>
<span class="not-covered" title="0 out of 1 forms covered">
171&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:filepath&nbsp;fp}))))]
</span><br/>
<span class="covered" title="4 out of 4 forms covered">
172&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(swap!&nbsp;oblist
</span><br/>
<span class="partial" title="7 out of 10 forms covered">
173&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#(when&nbsp;(or&nbsp;%&nbsp;(seq&nbsp;content))
</span><br/>
<span class="covered" title="3 out of 3 forms covered">
174&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(resolve-subroutines&nbsp;content))))))
</span><br/>
</body>
</html>

View file

@ -16,20 +16,20 @@
</tr></thead>
<tr>
<td><a href="beowulf/bootstrap.clj.html">beowulf.bootstrap</a></td><td class="with-bar"><div class="covered"
style="width:64.03688524590164%;
float:left;"> 625 </div><div class="not-covered"
style="width:35.96311475409836%;
float:left;"> 351 </div></td>
<td class="with-number">64.04 %</td>
style="width:68.25251601097895%;
float:left;"> 746 </div><div class="not-covered"
style="width:31.747483989021042%;
float:left;"> 347 </div></td>
<td class="with-number">68.25 %</td>
<td class="with-bar"><div class="covered"
style="width:59.48275862068966%;
float:left;"> 138 </div><div class="partial"
style="width:8.189655172413794%;
float:left;"> 19 </div><div class="not-covered"
style="width:32.327586206896555%;
float:left;"> 75 </div></td>
<td class="with-number">67.67 %</td>
<td class="with-number">422</td><td class="with-number">33</td><td class="with-number">232</td>
style="width:64.31372549019608%;
float:left;"> 164 </div><div class="partial"
style="width:8.235294117647058%;
float:left;"> 21 </div><div class="not-covered"
style="width:27.45098039215686%;
float:left;"> 70 </div></td>
<td class="with-number">72.55 %</td>
<td class="with-number">498</td><td class="with-number">43</td><td class="with-number">255</td>
</tr>
<tr>
<td><a href="beowulf/cons_cell.clj.html">beowulf.cons-cell</a></td><td class="with-bar"><div class="covered"
@ -67,20 +67,20 @@
</tr>
<tr>
<td><a href="beowulf/host.clj.html">beowulf.host</a></td><td class="with-bar"><div class="covered"
style="width:56.44047135310849%;
float:left;"> 1389 </div><div class="not-covered"
style="width:43.55952864689151%;
float:left;"> 1072 </div></td>
<td class="with-number">56.44 %</td>
style="width:56.92369802180057%;
float:left;"> 1410 </div><div class="not-covered"
style="width:43.07630197819943%;
float:left;"> 1067 </div></td>
<td class="with-number">56.92 %</td>
<td class="with-bar"><div class="covered"
style="width:75.37878787878788%;
float:left;"> 199 </div><div class="partial"
style="width:12.121212121212121%;
style="width:76.02996254681648%;
float:left;"> 203 </div><div class="partial"
style="width:11.985018726591761%;
float:left;"> 32 </div><div class="not-covered"
style="width:12.5%;
float:left;"> 33 </div></td>
<td class="with-number">87.50 %</td>
<td class="with-number">589</td><td class="with-number">67</td><td class="with-number">264</td>
style="width:11.985018726591761%;
float:left;"> 32 </div></td>
<td class="with-number">88.01 %</td>
<td class="with-number">607</td><td class="with-number">69</td><td class="with-number">267</td>
</tr>
<tr>
<td><a href="beowulf/interop.clj.html">beowulf.interop</a></td><td class="with-bar"><div class="covered"
@ -101,20 +101,20 @@
</tr>
<tr>
<td><a href="beowulf/io.clj.html">beowulf.io</a></td><td class="with-bar"><div class="covered"
style="width:43.962848297213625%;
style="width:43.03030303030303%;
float:left;"> 142 </div><div class="not-covered"
style="width:56.037151702786375%;
float:left;"> 181 </div></td>
<td class="with-number">43.96 %</td>
style="width:56.96969696969697%;
float:left;"> 188 </div></td>
<td class="with-number">43.03 %</td>
<td class="with-bar"><div class="covered"
style="width:45.833333333333336%;
float:left;"> 33 </div><div class="partial"
style="width:8.333333333333334%;
float:left;"> 6 </div><div class="not-covered"
style="width:45.833333333333336%;
float:left;"> 33 </div></td>
<td class="with-number">54.17 %</td>
<td class="with-number">171</td><td class="with-number">12</td><td class="with-number">72</td>
style="width:42.666666666666664%;
float:left;"> 32 </div><div class="partial"
style="width:9.333333333333334%;
float:left;"> 7 </div><div class="not-covered"
style="width:48.0%;
float:left;"> 36 </div></td>
<td class="with-number">52.00 %</td>
<td class="with-number">174</td><td class="with-number">12</td><td class="with-number">75</td>
</tr>
<tr>
<td><a href="beowulf/manual.clj.html">beowulf.manual</a></td><td class="with-bar"><div class="covered"
@ -236,9 +236,9 @@
</tr>
<tr><td>Totals:</td>
<td class="with-bar"></td>
<td class="with-number">68.60 %</td>
<td class="with-number">69.16 %</td>
<td class="with-bar"></td>
<td class="with-number">77.76 %</td>
<td class="with-number">78.39 %</td>
</tr>
</table>
</body>