diff --git a/changelog b/changelog
index 80d006c..8a96ab3 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,22 @@
+20110109 tpd src/axiom-website/patches.html 20110109.03.tpd.patch
+20110109 tpd src/interp/Makefile move to lisp tangle
+20110109 tpd src/interp/i-coerfn.lisp move to lisp tangle
+20110109 tpd src/interp/i-eval.lisp move to lisp tangle
+20110109 tpd src/interp/i-funsel.lisp move to lisp tangle
+20110109 tpd src/interp/i-intern.lisp move to lisp tangle
+20110109 tpd src/interp/i-map.lisp move to lisp tangle
+20110109 tpd src/interp/i-output.lisp move to lisp tangle
+20110109 tpd src/interp/i-resolv.lisp move to lisp tangle
+20110109 tpd src/interp/i-spec1.lisp move to lisp tangle
+20110109 tpd src/interp/i-spec2.lisp move to lisp tangle
+20110109 tpd src/interp/i-util.lisp move to lisp tangle
+20110109 tpd src/interp/info.lisp move to lisp tangle
+20110109 tpd src/interp/interop.lisp move to lisp tangle
+20110109 tpd src/interp/iterator.lisp move to lisp tangle
+20110109 tpd src/interp/lisplib.lisp move to lisp tangle
+20110109 tpd src/interp/match.lisp move to lisp tangle
+20110109 tpd src/interp/modemap.lisp move to lisp tangle
+20110109 tpd src/interp/msgdb.lisp move to lisp tangle
 20110109 tpd src/axiom-website/patches.html 20110109.02.tpd.patch
 20110109 tpd src/interp/Makefile move to lisp tangle
 20110109 tpd src/interp/c-util.lisp move to lisp tangle
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index dc3fbd3..6276759 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -3339,5 +3339,7 @@ books/bookvol5 convert to lisp tangle<br/>
 *.lisp.pamphlet moving to lisp tangle<br/>
 <a href="patches/20110109.02.tpd.patch">20110109.02.tpd.patch</a>
 *.lisp.pamphlet moving to lisp tangle<br/>
+<a href="patches/20110109.03.tpd.patch">20110109.03.tpd.patch</a>
+*.lisp.pamphlet moving to lisp tangle<br/>
  </body>
 </html>
diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet
index 745cb6b..fa19fa8 100644
--- a/src/interp/Makefile.pamphlet
+++ b/src/interp/Makefile.pamphlet
@@ -2058,7 +2058,8 @@ ${MID}/i-coerfn.lisp: ${IN}/i-coerfn.lisp.pamphlet
 	@ echo 137 making ${MID}/i-coerfn.lisp from \
           ${IN}/i-coerfn.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-coerfn.lisp.pamphlet >i-coerfn.lisp )
+          echo '(tangle "${IN}/i-coerfn.lisp.pamphlet" "*" "i-coerfn.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2082,7 +2083,8 @@ ${MID}/i-eval.lisp: ${IN}/i-eval.lisp.pamphlet
 	@ echo 137 making ${MID}/i-eval.lisp from \
           ${IN}/i-eval.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-eval.lisp.pamphlet >i-eval.lisp )
+          echo '(tangle "${IN}/i-eval.lisp.pamphlet" "*" "i-eval.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2106,7 +2108,8 @@ ${MID}/i-funsel.lisp: ${IN}/i-funsel.lisp.pamphlet
 	@ echo 137 making ${MID}/i-funsel.lisp from \
           ${IN}/i-funsel.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-funsel.lisp.pamphlet >i-funsel.lisp )
+          echo '(tangle "${IN}/i-funsel.lisp.pamphlet" "*" "i-funsel.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2219,7 +2222,8 @@ ${MID}/i-intern.lisp: ${IN}/i-intern.lisp.pamphlet
 	@ echo 137 making ${MID}/i-intern.lisp from \
           ${IN}/i-intern.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-intern.lisp.pamphlet >i-intern.lisp )
+          echo '(tangle "${IN}/i-intern.lisp.pamphlet" "*" "i-intern.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2243,7 +2247,8 @@ ${MID}/i-map.lisp: ${IN}/i-map.lisp.pamphlet
 	@ echo 137 making ${MID}/i-map.lisp from \
           ${IN}/i-map.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-map.lisp.pamphlet >i-map.lisp )
+          echo '(tangle "${IN}/i-map.lisp.pamphlet" "*" "i-map.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2267,7 +2272,8 @@ ${MID}/i-output.lisp: ${IN}/i-output.lisp.pamphlet
 	@ echo 137 making ${MID}/i-output.lisp from \
           ${IN}/i-output.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-output.lisp.pamphlet >i-output.lisp )
+          echo '(tangle "${IN}/i-output.lisp.pamphlet" "*" "i-output.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2291,7 +2297,8 @@ ${MID}/i-resolv.lisp: ${IN}/i-resolv.lisp.pamphlet
 	@ echo 137 making ${MID}/i-resolv.lisp from \
           ${IN}/i-resolv.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-resolv.lisp.pamphlet >i-resolv.lisp )
+          echo '(tangle "${IN}/i-resolv.lisp.pamphlet" "*" "i-resolv.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2315,7 +2322,8 @@ ${MID}/i-spec1.lisp: ${IN}/i-spec1.lisp.pamphlet
 	@ echo 137 making ${MID}/i-spec1.lisp from \
           ${IN}/i-spec1.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-spec1.lisp.pamphlet >i-spec1.lisp )
+          echo '(tangle "${IN}/i-spec1.lisp.pamphlet" "*" "i-spec1.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2339,7 +2347,8 @@ ${MID}/i-spec2.lisp: ${IN}/i-spec2.lisp.pamphlet
 	@ echo 137 making ${MID}/i-spec2.lisp from \
           ${IN}/i-spec2.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-spec2.lisp.pamphlet >i-spec2.lisp )
+          echo '(tangle "${IN}/i-spec2.lisp.pamphlet" "*" "i-spec2.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2363,7 +2372,8 @@ ${MID}/i-util.lisp: ${IN}/i-util.lisp.pamphlet
 	@ echo 137 making ${MID}/i-util.lisp from \
           ${IN}/i-util.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/i-util.lisp.pamphlet >i-util.lisp )
+          echo '(tangle "${IN}/i-util.lisp.pamphlet" "*" "i-util.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2386,7 +2396,8 @@ ${OUT}/info.${O}: ${MID}/info.lisp
 ${MID}/info.lisp: ${IN}/info.lisp.pamphlet
 	@ echo 137 making ${MID}/info.lisp from ${IN}/info.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/info.lisp.pamphlet >info.lisp )
+          echo '(tangle "${IN}/info.lisp.pamphlet" "*" "info.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2410,7 +2421,8 @@ ${MID}/iterator.lisp: ${IN}/iterator.lisp.pamphlet
 	@ echo 137 making ${MID}/iterator.lisp from \
            ${IN}/iterator.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/iterator.lisp.pamphlet >iterator.lisp )
+          echo '(tangle "${IN}/iterator.lisp.pamphlet" "*" "iterator.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2433,7 +2445,8 @@ ${OUT}/lisplib.${O}: ${MID}/lisplib.lisp
 ${MID}/lisplib.lisp: ${IN}/lisplib.lisp.pamphlet
 	@ echo 137 making ${MID}/lisplib.lisp from ${IN}/lisplib.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/lisplib.lisp.pamphlet >lisplib.lisp )
+          echo '(tangle "${IN}/lisplib.lisp.pamphlet" "*" "lisplib.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2456,7 +2469,8 @@ ${OUT}/match.${O}: ${MID}/match.lisp
 ${MID}/match.lisp: ${IN}/match.lisp.pamphlet
 	@ echo 137 making ${MID}/match.lisp from ${IN}/match.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/match.lisp.pamphlet >match.lisp )
+          echo '(tangle "${IN}/match.lisp.pamphlet" "*" "match.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2479,7 +2493,8 @@ ${OUT}/modemap.${O}: ${MID}/modemap.lisp
 ${MID}/modemap.lisp: ${IN}/modemap.lisp.pamphlet
 	@ echo 137 making ${MID}/modemap.lisp from ${IN}/modemap.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/modemap.lisp.pamphlet >modemap.lisp )
+          echo '(tangle "${IN}/modemap.lisp.pamphlet" "*" "modemap.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -2502,7 +2517,8 @@ ${OUT}/msgdb.${O}: ${MID}/msgdb.lisp
 ${MID}/msgdb.lisp: ${IN}/msgdb.lisp.pamphlet
 	@ echo 137 making ${MID}/msgdb.lisp from ${IN}/msgdb.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/msgdb.lisp.pamphlet >msgdb.lisp )
+          echo '(tangle "${IN}/msgdb.lisp.pamphlet" "*" "msgdb.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
@@ -3194,7 +3210,8 @@ ${OUT}/interop.${O}: ${MID}/interop.lisp
 ${MID}/interop.lisp: ${IN}/interop.lisp.pamphlet
 	@ echo 137 making ${MID}/interop.lisp from ${IN}/interop.lisp.pamphlet
 	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/interop.lisp.pamphlet >interop.lisp )
+          echo '(tangle "${IN}/interop.lisp.pamphlet" "*" "interop.lisp")' \
+        | ${OBJ}/${SYS}/bin/lisp )
 
 @
 
diff --git a/src/interp/i-coerfn.lisp.pamphlet b/src/interp/i-coerfn.lisp.pamphlet
index 68a4dfe..86299e4 100755
--- a/src/interp/i-coerfn.lisp.pamphlet
+++ b/src/interp/i-coerfn.lisp.pamphlet
@@ -72,7 +72,7 @@ all these coercion functions have the following result:
      coerceByTable
 
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 (in-package "BOOT")
 
 ;SETANDFILEQ($coerceFailure,GENSYM())
@@ -6875,7 +6875,7 @@ all these coercion functions have the following result:
                          (CONS |target| (CONS |target| NIL))))
             (SPADCALL (SPADCALL |lc'| |lm'| |multfun|) |rd'| |plusfun|))))))))
 
-@
+\end{chunk}
 \begin{verbatim}
 
  Format for alist member is:  domain  coercionType function
@@ -6892,7 +6892,7 @@ all these coercion functions have the following result:
  a function like deconstructTower.  RSS 8-1-85
 
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 ;SETANDFILEQ($CoerceTable, '(                                          _
 ;  (Complex . ( _
 ;    (Expression                       indeterm   Complex2Expr) _
@@ -7414,7 +7414,7 @@ all these coercion functions have the following result:
           (|SparseUnivariatePolynomial| |commute| |commuteSm1|)
           (|UnivariatePolynomial| |commute| |commuteSm2|))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-eval.lisp.pamphlet b/src/interp/i-eval.lisp.pamphlet
index 1fdbf6f..8edb61d 100644
--- a/src/interp/i-eval.lisp.pamphlet
+++ b/src/interp/i-eval.lisp.pamphlet
@@ -125,7 +125,7 @@ the alternate polynomial types of Symbols.
 \item {\bf \$localVars}: list of local variables in a map body
 \item {\bf \$MapArgumentTypeList}: hack for stream compilation
 \end{itemize}
-<<*>>=
+\begin{chunk}{*}
 (IN-PACKAGE "BOOT" )
 
 ;--% Constructor Evaluation
@@ -1476,7 +1476,7 @@ the alternate polynomial types of Symbols.
   ((BOOT-EQUAL |x| |$coerceFailure|) NIL)
   ((QUOTE T) |x|))) 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-funsel.lisp.pamphlet b/src/interp/i-funsel.lisp.pamphlet
index 8c9f46f..866b731 100644
--- a/src/interp/i-funsel.lisp.pamphlet
+++ b/src/interp/i-funsel.lisp.pamphlet
@@ -34,11 +34,12 @@ the following flags are used:
 constant [[$EmptyMode]] (defined in bootfuns.lisp) evaluates to
 [[|$EmptyMode|]]. This constants is inserted in a modemap during
 compile time if the modemap is not yet complete.
-<<isPartialMode>>=
+\begin{chunk}{isPartialMode}
 isPartialMode m ==
   CONTAINED($EmptyMode,m)
 
-<<*>>=
+\end{chunk}
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -2166,7 +2167,7 @@ isPartialMode m ==
                                (t (setq |mmS| (CONS |mm| |mmS|)))))))))
              (NREVERSE |mmS|))))))
 
-@
+\end{chunk}
 mmCost assigns a penalty to each signature according to the following
 formula:
 \begin{verbatim}
@@ -2190,7 +2191,7 @@ targets is done at the very end.
 In particular, note that if we have two signatures taking types A and B,
 and the given argument does not match exactly but has to be coerced, then
 the types A and B themselves are not sorted by preference. 
-<<*>>=
+\begin{chunk}{*}
 ;mmCost(name, sig,cond,tar,args1,args2) ==
 ;  cost := mmCost0(name, sig,cond,tar,args1,args2)
 ;  res := CADR sig
@@ -6711,7 +6712,7 @@ the types A and B themselves are not sorted by preference.
              (t NIL)))
           (t NIL))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-intern.lisp.pamphlet b/src/interp/i-intern.lisp.pamphlet
index 1e23d5a..c276f4c 100644
--- a/src/interp/i-intern.lisp.pamphlet
+++ b/src/interp/i-intern.lisp.pamphlet
@@ -32,7 +32,7 @@ slot & description\\
  3   & modeset: list of single computed mode of subtree\\
  4   & prop list for extra things\\
 \end{tabular}
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -43,10 +43,10 @@ slot & description\\
 
 (SETANDFILEQ |$transferParserSrcPos| NIL) 
 
-@
+\end{chunk}
 \section{Making trees}
 \subsection{mkAtreeNode}
-<<*>>=
+\begin{chunk}{*}
 ;mkAtreeNode x ==
 ;  -- maker of attrib tree node
 ;  v := MAKE_-VEC 5
@@ -57,18 +57,18 @@ slot & description\\
  (PROG (|v|)
   (RETURN (PROGN (SPADLET |v| (make-array 5)) (SETELT |v| 0 |x|) |v|)))) 
 
-@
+\end{chunk}
 \subsection{mkAtree}
 Maker of attrib tree from parser form
-<<*>>=
+\begin{chunk}{*}
 ;mkAtree x ==
 ;  mkAtree1 mkAtreeExpandMacros x
 
 (DEFUN |mkAtree| (|x|) (|mkAtree1| (|mkAtreeExpandMacros| |x|))) 
 
-@
+\end{chunk}
 \subsection{mkAtreeWithSrcPos}
-<<*>>=
+\begin{chunk}{*}
 ;mkAtreeWithSrcPos(form, posnForm) ==
 ;    posnForm and $useParserSrcPos => pf2Atree(posnForm)
 ;    transferSrcPosInfo(posnForm, mkAtree form)
@@ -79,27 +79,27 @@ Maker of attrib tree from parser form
   ((AND |posnForm| |$useParserSrcPos|) (|pf2Atree| |posnForm|))
   ((QUOTE T) (|transferSrcPosInfo| |posnForm| (|mkAtree| |form|))))) 
 
-@
+\end{chunk}
 \subsection{mkAtree1WithSrcPos}
-<<*>>=
+\begin{chunk}{*}
 ;mkAtree1WithSrcPos(form, posnForm) ==
 ;  transferSrcPosInfo(posnForm, mkAtree1 form)
 
 (DEFUN |mkAtree1WithSrcPos| (|form| |posnForm|)
  (|transferSrcPosInfo| |posnForm| (|mkAtree1| |form|))) 
 
-@
+\end{chunk}
 \subsection{mkAtreeNodeWithSrcPos}
-<<*>>=
+\begin{chunk}{*}
 ;mkAtreeNodeWithSrcPos(form, posnForm) ==
 ;  transferSrcPosInfo(posnForm, mkAtreeNode form)
 
 (DEFUN |mkAtreeNodeWithSrcPos| (|form| |posnForm|)
  (|transferSrcPosInfo| |posnForm| (|mkAtreeNode| |form|))) 
 
-@
+\end{chunk}
 \subsection{transferSrcPosInfo}
-<<*>>=
+\begin{chunk}{*}
 ;transferSrcPosInfo(pf, atree) ==
 ;    not (pf and $transferParserSrcPos) => atree
 ;    pos := pfPosOrNopos(pf)
@@ -134,11 +134,11 @@ Maker of attrib tree from parser form
         (|pfCharPosn| |pos|))
        |atree|))))))) 
 
-@
+\end{chunk}
 \subsection{mkAtreeExpandMacros}
 Handle macro expansion. if the macros have args we require that
 we match the correct number of args
-<<*>>=
+\begin{chunk}{*}
 ;mkAtreeExpandMacros x ==
 ;  if x isnt ['MDEF,:.] and x isnt ['DEF,['macro,:.],:.] then
 ;    atom x and (m := isInterpMacro x) =>
@@ -247,9 +247,9 @@ we match the correct number of args
              (SPADLET |x| (CONS (|mkAtreeExpandMacros| |op|) |argl|))))))))))
      |x|)))))
  
-@
+\end{chunk}
 \subsection{mkAtree1}
-<<*>>=
+\begin{chunk}{*}
 ;mkAtree1 x ==
 ;  -- first special handler for making attrib tree
 ;  null x => throwKeyedMsg("S2IP0005",['"NIL"])
@@ -302,10 +302,10 @@ we match the correct number of args
      (|mkAtree2| |x| |op| |argl|))
     ((QUOTE T) (|systemErrorHere| "mkAtree1")))))) 
 
-@
+\end{chunk}
 \subsection{mkAtree2}
 mkAtree2 and mkAtree3 were created because mkAtree1 got so big
-<<*>>=
+\begin{chunk}{*}
 ;mkAtree2(x,op,argl) ==
 ;  nargl := #argl
 ;  (op= '_-) and (nargl = 1) and (INTEGERP CAR argl) =>
@@ -635,10 +635,10 @@ mkAtree2 and mkAtree3 were created because mkAtree1 got so big
           (CONS "$" (CONS |argl| (CONS "not qualifying an operator" NIL)))))))
       ((QUOTE T) (|mkAtree3| |x| |op| |argl|)))))))) 
 
-@
+\end{chunk}
 \subsection{mkAtree3}
 mkAtree2 and mkAtree3 were created because mkAtree1 got so big
-<<*>>=
+\begin{chunk}{*}
 ;mkAtree3(x,op,argl) ==
 ;  op='REDUCE and argl is [op1,axis,body] =>
 ;    [mkAtreeNode op,axis,mkAtree1 op1,mkAtree1 body]
@@ -1115,7 +1115,7 @@ mkAtree2 and mkAtree3 were created because mkAtree1 got so big
                (NREVERSE0 #12#))
           (SEQ (EXIT (SETQ #12# (CONS (|mkAtree1| |y|) #12#)))))))))))))) 
 
-@
+\end{chunk}
 \subsection{collectDefTypesAndPreds}
 Given an arglist to a DEF-like form, this function returns
 a vector of three things:
@@ -1124,7 +1124,7 @@ a vector of three things:
 \item slot 1: the type declarations on the variables
 \item slot 2: a predicate for all arguments
 \end{itemize}
-<<*>>=
+\begin{chunk}{*}
 ;collectDefTypesAndPreds args ==
 ;  pred := types := vars := NIL
 ;  junk :=
@@ -1270,9 +1270,9 @@ a vector of three things:
         (SPADLET |vars| (CONS |args| NIL)))))
      (VECTOR |vars| |types| |pred|)))))) 
 
-@
+\end{chunk}
 \subsection{mkAtreeValueOf}
-<<*>>=
+\begin{chunk}{*}
 ;mkAtreeValueOf l ==
 ;  -- scans for ['valueOf,atom]
 ;  not CONTAINED('valueOf,l) => l
@@ -1283,9 +1283,9 @@ a vector of three things:
   ((NULL (CONTAINED (QUOTE |valueOf|) |l|)) |l|)
   ((QUOTE T) (|mkAtreeValueOf1| |l|)))) 
 
-@
+\end{chunk}
 \subsection{mkAtreeValueOf1}
-<<*>>=
+\begin{chunk}{*}
 ;mkAtreeValueOf1 l ==
 ;  null l or atom l or null rest l => l
 ;  l is ['valueOf,u] and IDENTP u =>
@@ -1326,19 +1326,19 @@ a vector of three things:
             ((OR (ATOM #1#) (PROGN (SETQ |x| (CAR #1#)) NIL)) (NREVERSE0 #0#))
          (SEQ (EXIT (SETQ #0# (CONS (|mkAtreeValueOf1| |x|) #0#))))))))))))) 
 
-@
+\end{chunk}
 \subsection{mkLessOrEqual}
-<<*>>=
+\begin{chunk}{*}
 ;mkLessOrEqual(lhs,rhs) == ['not,['_<,rhs,lhs]]
 
 (DEFUN |mkLessOrEqual| (|lhs| |rhs|)
  (CONS (QUOTE |not|)
   (CONS (CONS (QUOTE <) (CONS |rhs| (CONS |lhs| NIL))) NIL))) 
 
-@
+\end{chunk}
 \subsection{emptyAtree}
 Remove mode, value, and misc. info from attrib tree
-<<*>>=
+\begin{chunk}{*}
 ;emptyAtree expr ==
 ;  VECP expr =>
 ;    $immediateDataSymbol = expr.0 => nil
@@ -1364,10 +1364,10 @@ Remove mode, value, and misc. info from attrib tree
         ((OR (ATOM #0#) (PROGN (SETQ |e| (CAR #0#)) NIL)) NIL)
      (SEQ (EXIT (|emptyAtree| |e|)))))))) 
 
-@
+\end{chunk}
 \subsection{unVectorize}
 Transforms from an atree back into a tree
-<<*>>=
+\begin{chunk}{*}
 ;unVectorize body ==
 ;  VECP body =>
 ;    name := getUnname body
@@ -1412,10 +1412,10 @@ Transforms from an atree back into a tree
      (CONS |newOp| (|unVectorize| |argl|)))
     ((QUOTE T) (|systemErrorHere| "unVectorize")))))) 
 
-@
+\end{chunk}
 \section{Stuffing and Getting Info}
 \subsection{putAtree}
-<<*>>=
+\begin{chunk}{*}
 ;putAtree(x,prop,val) ==
 ;  x is [op,:.] =>
 ;    -- only willing to add property if op is a vector
@@ -1441,9 +1441,9 @@ Transforms from an atree back into a tree
     ((QUOTE T)
      (SETELT |x| 4 (|insertShortAlist| |prop| |val| (ELT |x| 4))) |x|))))) 
 
-@
+\end{chunk}
 \subsection{getAtree}
-<<*>>=
+\begin{chunk}{*}
 ;getAtree(x,prop) ==
 ;  x is [op,:.] =>
 ;    -- only willing to get property if op is a vector
@@ -1467,9 +1467,9 @@ Transforms from an atree back into a tree
      (ELT |x| |n|))
     ((QUOTE T) (QLASSQ |prop| (ELT |x| 4))))))) 
 
-@
+\end{chunk}
 \subsection{putTarget}
-<<*>>=
+\begin{chunk}{*}
 ;putTarget(x, targ) ==
 ;  -- want to put nil modes perhaps to clear old target
 ;  if targ = $EmptyMode then targ := nil
@@ -1481,16 +1481,16 @@ Transforms from an atree back into a tree
   (COND ((BOOT-EQUAL |targ| |$EmptyMode|) (SPADLET |targ| NIL)))
   (|putAtree| |x| (QUOTE |target|) |targ|))) 
 
-@
+\end{chunk}
 \subsection{getTarget}
-<<*>>=
+\begin{chunk}{*}
 ;getTarget(x) == getAtree(x,'target)
 
 (DEFUN |getTarget| (|x|) (|getAtree| |x| (QUOTE |target|))) 
 
-@
+\end{chunk}
 \subsection{insertShortAlist}
-<<*>>=
+\begin{chunk}{*}
 ;insertShortAlist(prop,val,al) ==
 ;  pair := QASSQ(prop,al) =>
 ;    RPLACD(pair,val)
@@ -1504,9 +1504,9 @@ Transforms from an atree back into a tree
     ((SPADLET |pair| (QASSQ |prop| |al|)) (RPLACD |pair| |val|) |al|)
     ((QUOTE T) (CONS (CONS |prop| |val|) |al|)))))) 
 
-@
+\end{chunk}
 \subsection{transferPropsToNode}
-<<*>>=
+\begin{chunk}{*}
 ;transferPropsToNode(x,t) ==
 ;  propList := getProplist(x,$env)
 ;  QLASSQ('Led,propList) or QLASSQ('Nud,propList) => nil
@@ -1561,17 +1561,17 @@ Transforms from an atree back into a tree
           (SPADLET |am| (|get| |x| (QUOTE |automode|) |$env|)))
          (|putModeSet| |t| (CONS |am| NIL)) (|putMode| |t| |am|))) |t|))))))) 
 
-@
+\end{chunk}
 \subsection{isLeaf}
 May be a number or a vector
-<<*>>=
+\begin{chunk}{*}
 ; isLeaf x == atom x
 
 (DEFUN |isLeaf| (|x|) (ATOM |x|)) 
 
-@
+\end{chunk}
 \subsection{getMode}
-<<*>>=
+\begin{chunk}{*}
 ;getMode x ==
 ;  x is [op,:.] => getMode op
 ;  VECP x => x.1
@@ -1588,9 +1588,9 @@ May be a number or a vector
     ((SPADLET |m| (|getBasicMode| |x|)) |m|)
     ((QUOTE T) (|keyedSystemError| (QUOTE S2II0001) (CONS |x| NIL))))))) 
 
-@
+\end{chunk}
 \subsection{putMode}
-<<*>>=
+\begin{chunk}{*}
 ;putMode(x,y) ==
 ;  x is [op,:.] => putMode(op,y)
 ;  null VECP x => keyedSystemError("S2II0001",[x])
@@ -1605,9 +1605,9 @@ May be a number or a vector
     ((NULL (VECP |x|)) (|keyedSystemError| (QUOTE S2II0001) (CONS |x| NIL)))
     ((QUOTE T) (SETELT |x| 1 |y|)))))) 
 
-@
+\end{chunk}
 \subsection{getValue}
-<<*>>=
+\begin{chunk}{*}
 ;getValue x ==
 ;  VECP x => x.2
 ;  atom x =>
@@ -1626,9 +1626,9 @@ May be a number or a vector
       ((QUOTE T) (|keyedSystemError| (QUOTE S2II0001) (CONS |x| NIL)))))
     ((QUOTE T) (|getValue| (CAR |x|))))))) 
 
-@
+\end{chunk}
 \subsection{putValue}
-<<*>>=
+\begin{chunk}{*}
 ;putValue(x,y) ==
 ;  x is [op,:.] => putValue(op,y)
 ;  null VECP x => keyedSystemError("S2II0001",[x])
@@ -1643,18 +1643,18 @@ May be a number or a vector
     ((NULL (VECP |x|)) (|keyedSystemError| (QUOTE S2II0001) (CONS |x| NIL)))
     ((QUOTE T) (SETELT |x| 2 |y|)))))) 
 
-@
+\end{chunk}
 \subsection{putValueValue}
-<<*>>=
+\begin{chunk}{*}
 ;putValueValue(vec,val) ==
 ;  putValue(vec,val)
 ;  vec
 
 (DEFUN |putValueValue| (|vec| |val|) (PROGN (|putValue| |vec| |val|) |vec|)) 
 
-@
+\end{chunk}
 \subsection{getUnnameIfCan}
-<<*>>=
+\begin{chunk}{*}
 ;getUnnameIfCan x ==
 ;  VECP x => x.0
 ;  x is [op,:.] => getUnnameIfCan op
@@ -1670,9 +1670,9 @@ May be a number or a vector
      (|getUnnameIfCan| |op|))
     ((ATOM |x|) |x|) ((QUOTE T) NIL))))) 
 
-@
+\end{chunk}
 \subsection{getUnname}
-<<*>>=
+\begin{chunk}{*}
 ;getUnname x ==
 ;  x is [op,:.] => getUnname op
 ;  getUnname1 x
@@ -1685,9 +1685,9 @@ May be a number or a vector
      (|getUnname| |op|))
     ((QUOTE T) (|getUnname1| |x|)))))) 
 
-@
+\end{chunk}
 \subsection{getUnname1}
-<<*>>=
+\begin{chunk}{*}
 ;getUnname1 x ==
 ;  VECP x => x.0
 ;  null atom x => keyedSystemError("S2II0001",[x])
@@ -1699,9 +1699,9 @@ May be a number or a vector
   ((NULL (ATOM |x|)) (|keyedSystemError| (QUOTE S2II0001) (CONS |x| NIL)))
   ((QUOTE T) |x|))) 
 
-@
+\end{chunk}
 \subsection{computedMode}
-<<*>>=
+\begin{chunk}{*}
 ;computedMode t ==
 ;  getModeSet t is [m] => m
 ;  keyedSystemError("S2GE0016",['"computedMode",'"non-singleton modeset"])
@@ -1721,9 +1721,9 @@ May be a number or a vector
      (|keyedSystemError| (QUOTE S2GE0016)
       (CONS "computedMode" (CONS "non-singleton modeset" NIL)))))))) 
 
-@
+\end{chunk}
 \subsection{putModeSet}
-<<*>>=
+\begin{chunk}{*}
 ;putModeSet(x,y) ==
 ;  x is [op,:.] => putModeSet(op,y)
 ;  not VECP x => keyedSystemError("S2II0001",[x])
@@ -1739,9 +1739,9 @@ May be a number or a vector
     ((NULL (VECP |x|)) (|keyedSystemError| (QUOTE S2II0001) (CONS |x| NIL)))
     ((QUOTE T) (SETELT |x| 3 |y|) |y|))))) 
 
-@
+\end{chunk}
 \subsection{getModeOrFirstModeSetIfThere}
-<<*>>=
+\begin{chunk}{*}
 ;getModeOrFirstModeSetIfThere x ==
 ;  x is [op,:.] => getModeOrFirstModeSetIfThere op
 ;  VECP x =>
@@ -1777,9 +1777,9 @@ May be a number or a vector
       ((QUOTE T) NIL)))
     ((SPADLET |m| (|getBasicMode| |x|)) |m|) ((QUOTE T) NIL))))) 
 
-@
+\end{chunk}
 \subsection{getModeSet}
-<<*>>=
+\begin{chunk}{*}
 ;getModeSet x ==
 ;  x and PAIRP x => getModeSet first x
 ;  VECP x =>
@@ -1820,9 +1820,9 @@ May be a number or a vector
      (|keyedSystemError| (QUOTE S2GE0016)
       (CONS "getModeSet" (CONS "not an attributed tree" NIL)))))))) 
 
-@
+\end{chunk}
 \subsection{getModeSetUseSubdomain}
-<<*>>=
+\begin{chunk}{*}
 ;getModeSetUseSubdomain x ==
 ;  x and PAIRP x => getModeSetUseSubdomain first x
 ;  VECP(x) =>
@@ -1891,16 +1891,16 @@ May be a number or a vector
      (|keyedSystemError| (QUOTE S2GE0016)
       (CONS "getModeSetUseSubomain" (CONS "not an attributed tree" NIL)))))))) 
 
-@
+\end{chunk}
 \subsection{atree2EvaluatedTree}
-<<*>>=
+\begin{chunk}{*}
 ;atree2EvaluatedTree x == atree2Tree1(x,true)
 
 (DEFUN |atree2EvaluatedTree| (|x|) (|atree2Tree1| |x| (QUOTE T))) 
 
-@
+\end{chunk}
 \subsection{atree2Tree1}
-<<*>>=
+\begin{chunk}{*}
 ;atree2Tree1(x,evalIfTrue) ==
 ;  (triple := getValue x) and objMode(triple) ^= $EmptyMode =>
 ;    coerceOrCroak(triple,$OutputForm,$mapName)
@@ -1930,10 +1930,10 @@ May be a number or a vector
           (EXIT
            (SETQ #0# (CONS (|atree2Tree1| |y| |evalIfTrue|) #0#))))))))))))) 
 
-@
+\end{chunk}
 \section{Environment Utilities}
 \subsection{getValueFromEnvironment}
-<<*>>=
+\begin{chunk}{*}
 ;getValueFromEnvironment(x,mode) ==
 ;  $failure ^= (v := getValueFromSpecificEnvironment(x,mode,$env)) => v
 ;  $failure ^= (v := getValueFromSpecificEnvironment(x,mode,$e))   => v
@@ -1960,9 +1960,9 @@ May be a number or a vector
       (|throwKeyedMsg| (QUOTE S2IE0001) (CONS |x| NIL)))
      ((QUOTE T) (|objValUnwrap| |v|)))))) 
 
-@
+\end{chunk}
 \subsection{getValueFromSpecificEnvironment}
-<<*>>=
+\begin{chunk}{*}
 ;getValueFromSpecificEnvironment(id,mode,e) ==
 ;  PAIRP e =>
 ;    u := get(id,'value,e) =>
@@ -2034,10 +2034,10 @@ May be a number or a vector
       ((QUOTE T) |$failure|)))
     ((QUOTE T) |$failure|))))) 
 
-@
-@
+\end{chunk}
+\end{chunk}
 \subsection{augProplistInteractive}
-<<*>>=
+\begin{chunk}{*}
 ;augProplistInteractive(proplist,prop,val) ==
 ;  u := ASSQ(prop,proplist) =>
 ;    RPLACD(u,val)
@@ -2051,18 +2051,18 @@ May be a number or a vector
     ((SPADLET |u| (ASSQ |prop| |proplist|)) (RPLACD |u| |val|) |proplist|)
     ((QUOTE T) (CONS (CONS |prop| |val|) |proplist|)))))) 
 
-@
+\end{chunk}
 \subsection{getFlag}
-<<*>>=
+\begin{chunk}{*}
 ;getFlag x == get("--flags--",x,$e)
 
 (DEFUN |getFlag| (|x|)
  (declare (special |$e|))
  (|get| (QUOTE |--flags--|) |x| |$e|)) 
 
-@
+\end{chunk}
 \subsection{putFlag}
-<<*>>=
+\begin{chunk}{*}
 ;putFlag(flag,value) ==
 ;  $e := put ("--flags--", flag, value, $e)
 
@@ -2070,9 +2070,9 @@ May be a number or a vector
  (declare (special |$e|))
  (SPADLET |$e| (|put| (QUOTE |--flags--|) |flag| |value| |$e|))) 
 
-@
+\end{chunk}
 \subsection{get}
-<<*>>=
+\begin{chunk}{*}
 ;get(x,prop,e) ==
 ;  $InteractiveMode => get0(x,prop,e)
 ;  get1(x,prop,e)
@@ -2083,9 +2083,9 @@ May be a number or a vector
   (|$InteractiveMode| (|get0| |x| |prop| |e|))
   ((QUOTE T) (|get1| |x| |prop| |e|)))) 
 
-@
+\end{chunk}
 \subsection{get0}
-<<*>>=
+\begin{chunk}{*}
 ;get0(x,prop,e) ==
 ;  null atom x => get(QCAR x,prop,e)
 ;  u:= QLASSQ(x,CAR QCAR e) => QLASSQ(prop,u)
@@ -2104,12 +2104,12 @@ May be a number or a vector
      (QLASSQ |prop| |u|))
     ((QUOTE T) NIL))))) 
 
-@
+\end{chunk}
 \subsection{get1}
 We try to avoid lookups in the environment if it is clear that
 the lookup will fail. The \verb|$envHashTable| was populated in
 addBinding (see g-util.boot.pamphlet).
-<<*>>=
+\begin{chunk}{*}
 ;get1(x,prop,e) ==
 ;    --this is the old get
 ;  negHash := nil
@@ -2165,9 +2165,9 @@ addBinding (see g-util.boot.pamphlet).
             (CONS |x| (CONS |prop| (CONS (AND |ress| (QUOTE T)) NIL)))))))
         |ress|)))))))) 
 
-@
+\end{chunk}
 \subsection{get2}
-<<*>>=
+\begin{chunk}{*}
 ;get2(x,prop,e) ==
 ;  prop="modemap" and constructor? x =>
 ;    (u := getConstructorModemap(x)) => [u]
@@ -2185,36 +2185,36 @@ addBinding (see g-util.boot.pamphlet).
       ((QUOTE T) NIL)))
     ((QUOTE T) NIL))))) 
 
-@
+\end{chunk}
 \subsection{getI}
-<<*>>=
+\begin{chunk}{*}
 ;getI(x,prop) == get(x,prop,$InteractiveFrame)
 
 (DEFUN |getI| (|x| |prop|)
  (declare (special |$InteractiveFrame|))
  (|get| |x| |prop| |$InteractiveFrame|)) 
 
-@
+\end{chunk}
 \subsection{putI}
-<<*>>=
+\begin{chunk}{*}
 ;putI(x,prop,val) == ($InteractiveFrame := put(x,prop,val,$InteractiveFrame))
 
 (DEFUN |putI| (|x| |prop| |val|)
  (declare (special |$InteractiveFrame|))
  (SPADLET |$InteractiveFrame| (|put| |x| |prop| |val| |$InteractiveFrame|))) 
 
-@
+\end{chunk}
 \subsection{getIProplist}
-<<*>>=
+\begin{chunk}{*}
 ;getIProplist x == getProplist(x,$InteractiveFrame)
 
 (DEFUN |getIProplist| (|x|)
  (declare (special |$InteractiveFrame|))
  (|getProplist| |x| |$InteractiveFrame|)) 
 
-@
+\end{chunk}
 \subsection{removeBindingI}
-<<*>>=
+\begin{chunk}{*}
 ;removeBindingI x ==
 ;  RPLAC(CAAR $InteractiveFrame,deleteAssocWOC(x,CAAR $InteractiveFrame))
 
@@ -2223,9 +2223,9 @@ addBinding (see g-util.boot.pamphlet).
   (CAAR |$InteractiveFrame|)
   (|deleteAssocWOC| |x| (CAAR |$InteractiveFrame|)))) 
 
-@
+\end{chunk}
 \subsection{rempropI}
-<<*>>=
+\begin{chunk}{*}
 ;rempropI(x,prop) ==
 ;  id:=
 ;    atom x => x
@@ -2249,9 +2249,9 @@ addBinding (see g-util.boot.pamphlet).
        (SPADLET |$InteractiveFrame|
         (|remprop| |id| |prop| |$InteractiveFrame|))))))))) 
 
-@
+\end{chunk}
 \subsection{remprop}
-<<*>>=
+\begin{chunk}{*}
 ;remprop(x,prop,e) ==
 ;  u:= ASSOC(prop,pl:= getProplist(x,e)) =>
 ;    e:= addBinding(x,DELASC(first u,pl),e)
@@ -2267,9 +2267,9 @@ addBinding (see g-util.boot.pamphlet).
      |e|)
     ((QUOTE T) |e|))))) 
 
-@
+\end{chunk}
 \subsection{fastSearchCurrentEnv}
-<<*>>=
+\begin{chunk}{*}
 ;fastSearchCurrentEnv(x,currentEnv) ==
 ;  u:= QLASSQ(x,CAR currentEnv) => u
 ;  while (currentEnv:= QCDR currentEnv) repeat
@@ -2289,9 +2289,9 @@ addBinding (see g-util.boot.pamphlet).
          (COND
           ((SPADLET |u| (QLASSQ |x| (CAR |currentEnv|))) (EXIT |u|)))))))))))) 
 
-@
+\end{chunk}
 \subsection{put}
-<<*>>=
+\begin{chunk}{*}
 ;put(x,prop,val,e) ==
 ;  $InteractiveMode and not EQ(e,$CategoryFrame) =>
 ;    putIntSymTab(x,prop,val,e)
@@ -2329,9 +2329,9 @@ addBinding (see g-util.boot.pamphlet).
        |e|)
       ((QUOTE T) (|addBinding| |x| |newProplist| |e|)))))))) 
 
-@
+\end{chunk}
 \subsection{putIntSymTab}
-<<*>>=
+\begin{chunk}{*}
 ;putIntSymTab(x,prop,val,e) ==
 ;  null atom x => putIntSymTab(first x,prop,val,e)
 ;  pl0 := pl := search(x,e)
@@ -2366,9 +2366,9 @@ addBinding (see g-util.boot.pamphlet).
       ((EQ |pl0| |pl|) |e|)
       ((QUOTE T) (|addIntSymTabBinding| |x| |pl| |e|)))))))) 
 
-@
+\end{chunk}
 \subsection{addIntSymTabBinding}
-<<*>>=
+\begin{chunk}{*}
 ;addIntSymTabBinding(var,proplist,e is [[curContour,:.],:.]) ==
 ;  -- change proplist of var in e destructively
 ;  u := ASSQ(var,curContour) =>
@@ -2387,7 +2387,7 @@ addBinding (see g-util.boot.pamphlet).
      ((QUOTE T)
       (RPLAC (CAAR |e|) (CONS (CONS |var| |proplist|) |curContour|)) |e|)))))) 
 
-@
+\end{chunk}
 \section{Source and position information}
 In the following, src is a string containing an original input line,
 line is the line number of the string within the source file,
@@ -2395,63 +2395,63 @@ and col is the index within src of the start of the form represented
 by x. x is a VAT.
 
 \subsection{putSrcPos}
-<<*>>=
+\begin{chunk}{*}
 ;putSrcPos(x, file, src, line, col) ==
 ;    putAtree(x, 'srcAndPos, srcPos_New(file, src, line, col))
 
 (DEFUN |putSrcPos| (|x| |file| |src| |line| |col|)
  (|putAtree| |x| (QUOTE |srcAndPos|) (|srcPosNew| |file| |src| |line| |col|))) 
 
-@
+\end{chunk}
 \subsection{getSrcPos}
-<<*>>=
+\begin{chunk}{*}
 ;getSrcPos(x) == getAtree(x, 'srcAndPos)
 
 (DEFUN |getSrcPos| (|x|) (|getAtree| |x| (QUOTE |srcAndPos|))) 
 
-@
+\end{chunk}
 \subsection{srcPosNew}
-<<*>>=
+\begin{chunk}{*}
 ;srcPosNew(file, src, line, col) == LIST2VEC [file, src, line, col]
 
 (DEFUN |srcPosNew| (|file| |src| |line| |col|)
  (LIST2VEC (CONS |file| (CONS |src| (CONS |line| (CONS |col| NIL)))))) 
 
-@
+\end{chunk}
 \subsection{srcPosFile}
-<<*>>=
+\begin{chunk}{*}
 ;srcPosFile(sp) ==
 ;    if sp then sp.0 else nil
 
 (DEFUN |srcPosFile| (|sp|) (COND (|sp| (ELT |sp| 0)) ((QUOTE T) NIL))) 
 
-@
+\end{chunk}
 \subsection{srcPosSource}
-<<*>>=
+\begin{chunk}{*}
 ;srcPosSource(sp) ==
 ;    if sp then sp.1 else nil
 
 (DEFUN |srcPosSource| (|sp|) (COND (|sp| (ELT |sp| 1)) ((QUOTE T) NIL))) 
 
-@
+\end{chunk}
 \subsection{srcPosLine}
-<<*>>=
+\begin{chunk}{*}
 ;srcPosLine(sp) ==
 ;    if sp then sp.2 else nil
 
 (DEFUN |srcPosLine| (|sp|) (COND (|sp| (ELT |sp| 2)) ((QUOTE T) NIL))) 
 
-@
+\end{chunk}
 \subsection{srcPosColumn}
-<<*>>=
+\begin{chunk}{*}
 ;srcPosColumn(sp) ==
 ;    if sp then sp.3 else nil
 
 (DEFUN |srcPosColumn| (|sp|) (COND (|sp| (ELT |sp| 3)) ((QUOTE T) NIL))) 
 
-@
+\end{chunk}
 \subsection{srcPosDisplay}
-<<*>>=
+\begin{chunk}{*}
 ;srcPosDisplay(sp) ==
 ;    null sp => nil
 ;    s := STRCONC('"_"", srcPosFile sp, '"_", line ",
@@ -2483,7 +2483,7 @@ by x. x is a VAT.
       (CONS (|fillerSpaces| (|#| |s|) " ") (CONS |dots| (CONS "^" NIL))))
      (QUOTE T)))))) 
 
-@
+\end{chunk}
 \section{Functions on interpreter objects}
 Interpreter objects used to be called triples because they had the
 structure [value, type, environment].  For many years, the environment
@@ -2501,126 +2501,126 @@ code, e.g., parts of a function that is being constructed.
 These are the new structure functions.
 
 \subsection{mkObj}
-<<*>>=
+\begin{chunk}{*}
 ;mkObj(val, mode) == CONS(mode,val)              -- old names
 
 (DEFUN |mkObj| (|val| |mode|) (CONS |mode| |val|)) 
 
-@
+\end{chunk}
 \subsection{mkObjWrap}
-<<*>>=
+\begin{chunk}{*}
 ;mkObjWrap(val, mode) == CONS(mode,wrap val)
 
 (DEFUN |mkObjWrap| (|val| |mode|) (CONS |mode| (|wrap| |val|))) 
 
-@
+\end{chunk}
 \subsection{mkObjCode}
-<<*>>=
+\begin{chunk}{*}
 ;mkObjCode(val, mode) == ['CONS, MKQ mode,val ]
 
 (DEFUN |mkObjCode| (|val| |mode|)
  (CONS (QUOTE CONS) (CONS (MKQ |mode|) (CONS |val| NIL)))) 
 
-@
+\end{chunk}
 \subsection{objNew}
-<<*>>=
+\begin{chunk}{*}
 ;objNew(val, mode) == CONS(mode,val)             -- new names as of 10/14/93
 
 (DEFUN |objNew| (|val| |mode|) (CONS |mode| |val|)) 
 
-@
+\end{chunk}
 \subsection{objNewWrap}
-<<*>>=
+\begin{chunk}{*}
 ;objNewWrap(val, mode) == CONS(mode,wrap val)
 
 (DEFUN |objNewWrap| (|val| |mode|) (CONS |mode| (|wrap| |val|))) 
 
-@
+\end{chunk}
 \subsection{objNewCode}
-<<*>>=
+\begin{chunk}{*}
 ;objNewCode(val, mode) == ['CONS, MKQ mode,val ]
 
 (DEFUN |objNewCode| (|val| |mode|)
  (CONS (QUOTE CONS) (CONS (MKQ |mode|) (CONS |val| NIL)))) 
 
-@
+\end{chunk}
 \subsection{objSetVal}
-<<*>>=
+\begin{chunk}{*}
 ;objSetVal(obj,val) == RPLACD(obj,val)
 
 (DEFUN |objSetVal| (|obj| |val|) (RPLACD |obj| |val|)) 
 
-@
+\end{chunk}
 \subsection{objSetMode}
-<<*>>=
+\begin{chunk}{*}
 ;objSetMode(obj,mode) == RPLACA(obj,mode)
 
 (DEFUN |objSetMode| (|obj| |mode|) (RPLACA |obj| |mode|)) 
 
-@
+\end{chunk}
 \subsection{objVal}
-<<*>>=
+\begin{chunk}{*}
 ;objVal obj == CDR obj
 
 (DEFUN |objVal| (|obj|) (CDR |obj|)) 
 
-@
+\end{chunk}
 \subsection{objValUnwrap}
-<<*>>=
+\begin{chunk}{*}
 ;objValUnwrap obj == unwrap CDR obj
 
 (DEFUN |objValUnwrap| (|obj|) (|unwrap| (CDR |obj|))) 
 
-@
+\end{chunk}
 \subsection{objMode}
-<<*>>=
+\begin{chunk}{*}
 ;objMode obj == CAR obj
 
 (DEFUN |objMode| (|obj|) (CAR |obj|)) 
 
-@
+\end{chunk}
 \subsection{objEnv}
-<<*>>=
+\begin{chunk}{*}
 ;objEnv obj == $NE
 
 (DEFUN |objEnv| (|obj|)
  (declare (special $NE) (ignore |obj|))
  $NE) 
 
-@
+\end{chunk}
 \subsection{objCodeVal}
-<<*>>=
+\begin{chunk}{*}
 ;objCodeVal obj == CADDR obj
 
 (DEFUN |objCodeVal| (|obj|) (CADDR |obj|)) 
 
-@
+\end{chunk}
 \subsection{objCodeMode}
-<<*>>=
+\begin{chunk}{*}
 ;objCodeMode obj == CADR obj
 
 (DEFUN |objCodeMode| (|obj|) (CADR |obj|)) 
 
-@
+\end{chunk}
 \section{Library compiler structures needed by the interpreter}
 Tuples and Crosses
 \subsection{asTupleNew}
-<<*>>=
+\begin{chunk}{*}
 ;asTupleNew(size, listOfElts) == CONS(size, LIST2VEC listOfElts)
 
 (DEFUN |asTupleNew| (SIZE |listOfElts|) (CONS SIZE (LIST2VEC |listOfElts|))) 
 
-@
+\end{chunk}
 \subsection{asTupleNew0}
-<<*>>=
+\begin{chunk}{*}
 ;asTupleNew0(listOfElts) == CONS(#listOfElts, LIST2VEC listOfElts)
 
 (DEFUN |asTupleNew0| (|listOfElts|)
  (CONS (|#| |listOfElts|) (LIST2VEC |listOfElts|))) 
 
-@
+\end{chunk}
 \subsection{asTupleNewCode}
-<<*>>=
+\begin{chunk}{*}
 ;asTupleNewCode(size, listOfElts) == ["asTupleNew", size, ['LIST, :listOfElts]]
 
 (DEFUN |asTupleNewCode| (SIZE |listOfElts|)
@@ -2628,36 +2628,36 @@ Tuples and Crosses
   (QUOTE |asTupleNew|)
   (CONS SIZE (CONS (CONS (QUOTE LIST) |listOfElts|) NIL)))) 
 
-@
+\end{chunk}
 \subsection{asTupleNewCode0}
-<<*>>=
+\begin{chunk}{*}
 ;asTupleNewCode0(listForm) == ["asTupleNew0", listForm]
 
 (DEFUN |asTupleNewCode0| (|listForm|)
  (CONS (QUOTE |asTupleNew0|) (CONS |listForm| NIL))) 
 
-@
+\end{chunk}
 \subsection{asTupleSize}
-<<*>>=
+\begin{chunk}{*}
 ;asTupleSize(at) == CAR at
 
 (DEFUN |asTupleSize| (|at|) (CAR |at|)) 
 
-@
+\end{chunk}
 \subsection{asTupleAsVector}
-<<*>>=
+\begin{chunk}{*}
 ;asTupleAsVector(at) == CDR at
 
 (DEFUN |asTupleAsVector| (|at|) (CDR |at|)) 
 
-@
+\end{chunk}
 \subsection{asTupleAsList}
-<<*>>=
+\begin{chunk}{*}
 ;asTupleAsList(at) == VEC2LIST asTupleAsVector at
 
 (DEFUN |asTupleAsList| (|at|) (VEC2LIST (|asTupleAsVector| |at|))) 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-map.lisp.pamphlet b/src/interp/i-map.lisp.pamphlet
index 6069d24..39644b7 100644
--- a/src/interp/i-map.lisp.pamphlet
+++ b/src/interp/i-map.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -4145,7 +4145,7 @@
 ;--    $e:= putHist(op,'mapBody,body:= combineMapParts mapDef,$e)
 ;--    body
 
-@
+\end{chunk}
 \begin{verbatim}
 DO NOT BELIEVE ALL OF THE FOLLOWING (IT IS OLD)
 VARIABLES.  Variables may or may not have a mode property.  If
@@ -4230,7 +4230,7 @@ with modemap ((dummy target source ..) (T f;1)) so that the next
 time f is applied to arguments which coerce to the source
 arguments of this local modemap, f;1 will be invoked.
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 ;getLocalVars(op,body) ==
 ;  -- looks in $e for local vars; if not found, computes then stores them
 ;  get(op,'localVars,$e) or
@@ -4250,7 +4250,7 @@ arguments of this local modemap, f;1 will be invoked.
             |lv|)))))
 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-output.lisp.pamphlet b/src/interp/i-output.lisp.pamphlet
index b15695b..9f5dbef 100644
--- a/src/interp/i-output.lisp.pamphlet
+++ b/src/interp/i-output.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 (IN-PACKAGE "BOOT" )
 
 (SPADLET |$collectOutput| NIL) 
@@ -161,7 +161,7 @@
     ((STRINGP |x|) |x|)
     ('T (|stringer| |x|))))
 
-@
+\end{chunk}
 \begin{verbatim}
 General convention in the ``app...'' functions:
 Added from an attempt to fix bugs by JHD: 2 Aug 89
@@ -174,7 +174,7 @@ The arguments are:
 \end{itemize}
 these functions return an updated ``layout so far'' in general
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 ;appChar(string,x,y,d) ==
 ;  if CHARP string then string := PNAME string
 ;  line:= LASSOC(y,d) =>
@@ -1081,12 +1081,12 @@ these functions return an updated ``layout so far'' in general
                     (|mkSuperSub| |op| |l|))
                    ('T (CONS (|outputTran| |op|) |l|)))))))))))
 
-@
+\end{chunk}
 The next two functions are designed to replace successive instances of
 binary functions with the n-ary equivalent, cutting down on recursion
 in outputTran and in partciular allowing big polynomials to be printed
 without stack overflow.  MCD.
-<<*>>=
+\begin{chunk}{*}
 ;flattenOps l ==
 ;  [op, :args ] := l
 ;  op in ['"+",'"*","+","*"] =>
@@ -6588,8 +6588,8 @@ NIL
 
 (DEFUN ASSOCIATER (FN LST)
   (COND ((NULL LST) NIL)
-	((NULL (CDR LST)) (CAR LST))
-	((LIST FN (CAR LST) (ASSOCIATER FN (CDR LST))))))
+        ((NULL (CDR LST)) (CAR LST))
+        ((LIST FN (CAR LST) (ASSOCIATER FN (CDR LST))))))
 
 (DEFUN |bracketagglist| (|u| |start| |linelength| |tchr| |open| |close|)
   (PROG (|lastx| |s| |nextu| |x| |ichr|)
@@ -7529,7 +7529,7 @@ NIL
                NIL)))))))))
 
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-resolv.lisp.pamphlet b/src/interp/i-resolv.lisp.pamphlet
index 7b636ce..f836cec 100644
--- a/src/interp/i-resolv.lisp.pamphlet
+++ b/src/interp/i-resolv.lisp.pamphlet
@@ -47,7 +47,7 @@ this symmetric resolution is done the following way:
    e.g. resolve P I and G I to P G I
 
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -2725,7 +2725,7 @@ this symmetric resolution is done the following way:
          (CGREATERP (princ-to-string (|opOf| |t1|))
              (princ-to-string (|opOf| |t2|)))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-spec1.lisp.pamphlet b/src/interp/i-spec1.lisp.pamphlet
index 9f02e1f..3e9d322 100644
--- a/src/interp/i-spec1.lisp.pamphlet
+++ b/src/interp/i-spec1.lisp.pamphlet
@@ -52,7 +52,7 @@ There are several special modes used in these functions:
   2) $NoValueMode and $ThrowAwayMode used to be used in situations
      where Void is now used, and are being phased out completely.
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -5095,7 +5095,7 @@ There are several special modes used in these functions:
     ((BOOT-EQUAL |x| (CAR |l|)) (|deleteAll| |x| (CDR |l|)))
     ('T (CONS (CAR |l|) (|deleteAll| |x| (CDR |l|))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-spec2.lisp.pamphlet b/src/interp/i-spec2.lisp.pamphlet
index 4fa3a2f..7c470ca 100644
--- a/src/interp/i-spec2.lisp.pamphlet
+++ b/src/interp/i-spec2.lisp.pamphlet
@@ -52,7 +52,7 @@ There are several special modes used in these functions:
   2) $NoValueMode and $ThrowAwayMode used to be used in situations
      where Void is now used, and are being phased out completely.
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -4083,7 +4083,7 @@ There are several special modes used in these functions:
                  (MAKEPROP |name| '|up| |functionName|)
                  (EXIT |functionName|))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/i-util.lisp.pamphlet b/src/interp/i-util.lisp.pamphlet
index 394d236..5f77dd3 100644
--- a/src/interp/i-util.lisp.pamphlet
+++ b/src/interp/i-util.lisp.pamphlet
@@ -18,7 +18,7 @@ that just happed to evaluate to themselves.  Typically generated
 lisp code is unwrapped.
  
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 (IN-PACKAGE "BOOT" )
 
 ;wrap x ==
@@ -736,7 +736,7 @@ lisp code is unwrapped.
     ((AND (PAIRP |x|) (EQ (QCAR |x|) 'QUOTE)) 'T)
     ('T NIL)))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/info.lisp.pamphlet b/src/interp/info.lisp.pamphlet
index 57e5115..469838a 100644
--- a/src/interp/info.lisp.pamphlet
+++ b/src/interp/info.lisp.pamphlet
@@ -34,7 +34,7 @@ The use of two representations is admitted to be clumsy
 
 modemap is of the form : ((op (targ arg1 arg2 ... argn)) pred (elt $ n)) 
 \end{verbatim}
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -1095,7 +1095,7 @@ modemap is of the form : ((op (targ arg1 arg2 ... argn)) pred (elt $ n))
                    (CONS                              " is not bound in the current environment"
                          NIL))))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/interop.lisp.pamphlet b/src/interp/interop.lisp.pamphlet
index 310030e..e256109 100644
--- a/src/interp/interop.lisp.pamphlet
+++ b/src/interp/interop.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 (IN-PACKAGE "BOOT" )
 
 ;-- note domainObjects are now (dispatchVector hashCode . domainVector)
@@ -1014,7 +1014,7 @@
 
 (SETQ |coerceConvertMmSelection;AL| (MAKE-HASHTABLE 'UEQUAL))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/iterator.lisp.pamphlet b/src/interp/iterator.lisp.pamphlet
index 7015ad7..31abeed 100644
--- a/src/interp/iterator.lisp.pamphlet
+++ b/src/interp/iterator.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 (IN-PACKAGE "BOOT" )
 
 ;getIdentity(x,e) ==
@@ -538,7 +538,7 @@
                                         'T)))))))
                  (CONS |m| (CONS R NIL))))))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/lisplib.lisp.pamphlet b/src/interp/lisplib.lisp.pamphlet
index 7017589..f5f7104 100644
--- a/src/interp/lisplib.lisp.pamphlet
+++ b/src/interp/lisplib.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 (IN-PACKAGE "BOOT" )
 
 ;isExistingFile f ==
@@ -2397,7 +2397,7 @@
               (|get| |op| '|isFunctor| |$CategoryFrame|))))
           ('T NIL))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/match.lisp.pamphlet b/src/interp/match.lisp.pamphlet
index 54a299f..1bd7815 100644
--- a/src/interp/match.lisp.pamphlet
+++ b/src/interp/match.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -649,7 +649,7 @@
         (COND ((> |m| |n|) (RETURN NIL)))
         (|substring?| |s| |t| (SPADDIFFERENCE |n| |m|))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/modemap.lisp.pamphlet b/src/interp/modemap.lisp.pamphlet
index 3319575..19353b7 100644
--- a/src/interp/modemap.lisp.pamphlet
+++ b/src/interp/modemap.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -1097,7 +1097,7 @@
               (SPADLET |$CapsuleDomainsInScope| |newValue|) |e|)
           ('T (|put| '|$DomainsInScope| 'special |newValue| |e|)))))))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
diff --git a/src/interp/msgdb.lisp.pamphlet b/src/interp/msgdb.lisp.pamphlet
index 491860c..5c7e0b8 100644
--- a/src/interp/msgdb.lisp.pamphlet
+++ b/src/interp/msgdb.lisp.pamphlet
@@ -9,7 +9,7 @@
 \eject
 \tableofcontents
 \eject
-<<*>>=
+\begin{chunk}{*}
 
 (IN-PACKAGE "BOOT" )
 
@@ -2581,7 +2581,7 @@
 
 (DEFUN |dbSpecialDisplayOpChar?| (|c|) (BOOT-EQUAL |c| (|char| '~)))
 
-@
+\end{chunk}
 \eject
 \begin{thebibliography}{99}
 \bibitem{1} nothing
