diff --git a/changelog b/changelog
index fbf66fa..101de02 100644
--- a/changelog
+++ b/changelog
@@ -1,8 +1,13 @@
-20090806 tpd src/axiom-website/patches.html 20090807.01.tpd.patch
-20090806 tpd src/interp/Makefile remove comp.lisp
-20090806 tpd src/interp/comp.lisp remove macros reference
-20090806 tpd src/interp/vmlisp.lisp merge comp.lisp
-20090806 tpd src/interp/comp.lisp removed, merged with vmlisp.lisp
+20090807 tpd src/axiom-website/patches.html 20090807.02.tpd.patch
+20090807 tpd src/interp/Makefile remove spaderror.lisp
+20090807 tpd src/interp/comp.lisp remove spaderror reference
+20090807 tpd src/interp/vmlisp.lisp merge spaderror.lisp
+20090807 tpd src/interp/spaderror.lisp removed, merged with vmlisp.lisp
+20090807 tpd src/axiom-website/patches.html 20090807.01.tpd.patch
+20090807 tpd src/interp/Makefile remove comp.lisp
+20090807 tpd src/interp/comp.lisp remove comp reference
+20090807 tpd src/interp/vmlisp.lisp merge comp.lisp
+20090807 tpd src/interp/comp.lisp removed, merged with vmlisp.lisp
 20090806 tpd src/axiom-website/patches.html 20090806.01.tpd.patch
 20090806 tpd src/interp/Makefile remove macros.lisp
 20090806 tpd src/interp/debugsys.lisp remove macros reference
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 23d5292..ba40569 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -1752,6 +1752,8 @@ vmlisp.lisp and nlib.lisp merged<br/>
 vmlisp.lisp and macros.lisp merged<br/>
 <a href="patches/20090807.01.tpd.patch">20090807.01.tpd.patch</a>
 vmlisp.lisp and comp.lisp merged<br/>
+<a href="patches/20090807.02.tpd.patch">20090807.02.tpd.patch</a>
+vmlisp.lisp and spaderror.lisp merged<br/>
 
  </body>
 </html>
diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet
index 79cb8c4..0cb65b3 100644
--- a/src/interp/Makefile.pamphlet
+++ b/src/interp/Makefile.pamphlet
@@ -128,7 +128,7 @@ expanded in later compiles. All macros are assumed to be
 in this list of files.
 <<environment>>=
 DEP= ${MID}/vmlisp.lisp    \
-     ${MID}/spaderror.lisp ${MID}/debug.lisp \
+     ${MID}/debug.lisp \
      ${MID}/spad.lisp      ${MID}/bits.lisp \
      ${MID}/setq.lisp      ${MID}/property.lisp \
      ${MID}/unlisp.lisp    ${MID}/foam_l.lisp \
@@ -221,7 +221,6 @@ OBJS= ${OUT}/vmlisp.${O}      \
       ${OUT}/sfsfun-l.${O}    ${OUT}/sfsfun.${O} \
       ${OUT}/simpbool.${O}    ${OUT}/slam.${O} \
       ${OUT}/sockio.${O}      ${OUT}/spad.${O} \
-      ${OUT}/spaderror.${O}    \
       ${OUT}/template.${O}    ${OUT}/termrw.${O} \
       ${OUT}/daase.${O}   \
       ${OUT}/fortcall.${O} \
@@ -493,7 +492,7 @@ DOCFILES=${DOC}/alql.boot.dvi \
 	 ${DOC}/sfsfun-l.lisp.dvi \
 	 ${DOC}/simpbool.boot.dvi \
 	 ${DOC}/slam.boot.dvi ${DOC}/sockio.lisp.dvi \
-	 ${DOC}/spaderror.lisp.dvi ${DOC}/spad.lisp.dvi \
+	 ${DOC}/spad.lisp.dvi \
 	 ${DOC}/sys-pkg.lisp.dvi ${DOC}/template.boot.dvi \
 	 ${DOC}/termrw.boot.dvi ${DOC}/topics.boot.dvi \
 	 ${DOC}/unlisp.lisp.dvi \
@@ -1669,42 +1668,6 @@ ${DOC}/spad.lisp.dvi: ${IN}/spad.lisp.pamphlet
 
 @
 
-\subsection{spaderror.lisp \cite{35}}
-<<spaderror.o (OUT from MID)>>=
-${OUT}/spaderror.${O}: ${MID}/spaderror.lisp
-	@ echo 123 making ${OUT}/spaderror.${O} from ${MID}/spaderror.lisp
-	@ ( cd ${MID} ; \
-	  if [ -z "${NOISE}" ] ; then \
-	   echo '(progn  (compile-file "${MID}/spaderror.lisp"' \
-             ':output-file "${OUT}/spaderror.${O}") (${BYE}))' | ${DEPSYS} ; \
-	  else \
-	   echo '(progn  (compile-file "${MID}/spaderror.lisp"' \
-             ':output-file "${OUT}/spaderror.${O}") (${BYE}))' | ${DEPSYS} \
-             >${TMP}/trace ; \
-	  fi )
-
-@
-<<spaderror.lisp (MID from IN)>>=
-${MID}/spaderror.lisp: ${IN}/spaderror.lisp.pamphlet
-	@ echo 124 making ${MID}/spaderror.lisp \
-                   from ${IN}/spaderror.lisp.pamphlet
-	@ (cd ${MID} ; \
-	   ${TANGLE} ${IN}/spaderror.lisp.pamphlet >spaderror.lisp )
-
-@
-<<spaderror.lisp.dvi (DOC from IN)>>=
-${DOC}/spaderror.lisp.dvi: ${IN}/spaderror.lisp.pamphlet 
-	@echo 125 making ${DOC}/spaderror.lisp.dvi \
-                  from ${IN}/spaderror.lisp.pamphlet
-	@(cd ${DOC} ; \
-	cp ${IN}/spaderror.lisp.pamphlet ${DOC} ; \
-	${DOCUMENT} ${NOISE} spaderror.lisp ; \
-	rm -f ${DOC}/spaderror.lisp.pamphlet ; \
-	rm -f ${DOC}/spaderror.lisp.tex ; \
-	rm -f ${DOC}/spaderror.lisp )
-
-@
-
 \subsection{sys-pkg.lisp \cite{36}}
 <<sys-pkg.lisp (OUT from MID)>>=
 ${OUT}/sys-pkg.${LISP}: ${MID}/sys-pkg.lisp 
@@ -7715,10 +7678,6 @@ clean:
 <<spad.lisp (MID from IN)>>
 <<spad.lisp.dvi (DOC from IN)>>
 
-<<spaderror.o (OUT from MID)>>
-<<spaderror.lisp (MID from IN)>>
-<<spaderror.lisp.dvi (DOC from IN)>>
-
 <<sys-pkg.lisp (OUT from MID)>>
 <<sys-pkg.lisp (MID from IN)>>
 <<sys-pkg.lisp.dvi (DOC from IN)>>
@@ -7790,7 +7749,6 @@ pp
 \bibitem{32} {\bf \$SPAD/src/interp/property.lisp.pamphlet}
 \bibitem{33} {\bf \$SPAD/src/interp/sockio.lisp.pamphlet}
 \bibitem{34} {\bf \$SPAD/src/interp/spad.lisp.pamphlet}
-\bibitem{35} {\bf \$SPAD/src/interp/spaderror.lisp.pamphlet}
 \bibitem{36} {\bf \$SPAD/src/interp/sys-pkg.lisp.pamphlet}
 \bibitem{38} {\bf \$SPAD/src/interp/util.lisp.pamphlet}
 \bibitem{39} {\bf \$SPAD/src/interp/vmlisp.lisp.pamphlet}
diff --git a/src/interp/debugsys.lisp.pamphlet b/src/interp/debugsys.lisp.pamphlet
index a6e17d0..2ff0988 100644
--- a/src/interp/debugsys.lisp.pamphlet
+++ b/src/interp/debugsys.lisp.pamphlet
@@ -163,7 +163,6 @@ loaded by hand we need to establish a value.
       (thesymb "/int/interp/slam.clisp")
       (thesymb (concatenate 'string "/obj/" *sys* "/interp/sockio.o"))
       (thesymb "/int/interp/spad.lisp")
-      (thesymb "/int/interp/spaderror.lisp")
       (thesymb "/int/interp/template.clisp")
       (thesymb "/int/interp/termrw.clisp")
       (thesymb "/int/interp/daase.lisp")
diff --git a/src/interp/spaderror.lisp.pamphlet b/src/interp/spaderror.lisp.pamphlet
deleted file mode 100644
index 8d76741..0000000
--- a/src/interp/spaderror.lisp.pamphlet
+++ /dev/null
@@ -1,126 +0,0 @@
-\documentclass{article}
-\usepackage{axiom}
-\begin{document}
-\title{\$SPAD/src/interp spaderroor.lisp}
-\author{Timothy Daly}
-\maketitle
-\begin{abstract}
-\end{abstract}
-\eject
-\tableofcontents
-\eject
-\section{License}
-<<license>>=
-;; Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.
-;; All rights reserved.
-;;
-;; Redistribution and use in source and binary forms, with or without
-;; modification, are permitted provided that the following conditions are
-;; met:
-;;
-;;     - Redistributions of source code must retain the above copyright
-;;       notice, this list of conditions and the following disclaimer.
-;;
-;;     - Redistributions in binary form must reproduce the above copyright
-;;       notice, this list of conditions and the following disclaimer in
-;;       the documentation and/or other materials provided with the
-;;       distribution.
-;;
-;;     - Neither the name of The Numerical ALgorithms Group Ltd. nor the
-;;       names of its contributors may be used to endorse or promote products
-;;       derived from this software without specific prior written permission.
-;;
-;; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
-;; IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-;; TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-;; PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
-;; OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-;; EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-;; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-;; PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-;; LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-@
-<<*>>=
-<<license>>
-
-;; this files contains basic routines for error handling
-(in-package "BOOT")
-
-(defun error-format (message args)
-  (let ((|$BreakMode| '|break|))
-    (declare (special |$BreakMode|))
-   (if (stringp message) (apply #'format nil message args) nil)))
- 
-;;(defmacro |trappedSpadEval| (form) form) ;;nop for now
-
-;; failed union branch --  value returned for numeric failure
-(setq |$numericFailure| (cons 1 "failed")) 
-
-(defvar |$oldBreakMode|)
-
-;; following macro evaluates form returning Union(type-of form, "failed")
-
-(defmacro |trapNumericErrors| (form)
-  `(let ((|$oldBreakMode| |$BreakMode|)
-	 (|$BreakMode| '|trapNumerics|)
-	 (val))
-     (setq val (catch '|trapNumerics| ,form))
-     (if (eq val |$numericFailure|) val
-       (cons 0 val))))
-
-;;;;;; considering this version for kcl
-;;(defmacro |trapNumericErrors| (form)
-;;   `(let ((val))
-;;      (setq val (errorset ,form))
-;;      (if (NULL val) |$numericFailure| (cons 0 (car val)))))
-
-;; the following form embeds around the akcl error handler
-#+:akcl
-(eval-when
- (load eval)
- (unembed 'system:universal-error-handler)
- (embed 'system:universal-error-handler
-	    '(lambda (type correctable? op
-			   continue-string error-string &rest args)
-	       (block
-		nil
-		(setq |$NeedToSignalSessionManager| T)
-		(if (and (boundp '|$inLispVM|) (boundp '|$BreakMode|))
-		    (cond ((eq |$BreakMode| '|validate|)
-			   (|systemError| (error-format error-string args)))
-			  ((and (eq |$BreakMode| '|trapNumerics|)
-				(eq type :ERROR))
-			   (setq |$BreakMode| nil)			   (throw '|trapNumerics| |$numericFailure|))
-                          ((and (eq |$BreakMode| '|trapNumerics|)
-				(boundp '|$oldBreakMode|)
-				(setq |$BreakMode| |$oldBreakMode|)
-				nil)) ;; resets error handler
-			  ((and (null |$inLispVM|)
-				(memq |$BreakMode| '(|nobreak| |query| |resume|)))
-			   (let ((|$inLispVM| T)) ;; turn off handler
-			     (return
-			      (|systemError| (error-format error-string args)))))
-			  ((eq |$BreakMode| '|letPrint2|)
-			   (setq |$BreakMode| nil)
-			   (throw '|letPrint2| nil))))
-		(apply system:universal-error-handler type correctable? op
-		       continue-string error-string args )))))
-
-
-
-
-
-
-
-
-
-
-@
-\eject
-\begin{thebibliography}{99}
-\bibitem{1} nothing
-\end{thebibliography}
-\end{document}
diff --git a/src/interp/vmlisp.lisp.pamphlet b/src/interp/vmlisp.lisp.pamphlet
index 6759138..ecc4ed6 100644
--- a/src/interp/vmlisp.lisp.pamphlet
+++ b/src/interp/vmlisp.lisp.pamphlet
@@ -5144,6 +5144,68 @@ terminals and empty or at-end files.  In Common Lisp, we must assume record size
 (defmacro PRESET (L) `(spadlet . ,L))
 (defmacro RESET (L) `(spadlet . ,L))
 
+;; this files contains basic routines for error handling
+(defun error-format (message args)
+  (let ((|$BreakMode| '|break|))
+    (declare (special |$BreakMode|))
+   (if (stringp message) (apply #'format nil message args) nil)))
+ 
+;;(defmacro |trappedSpadEval| (form) form) ;;nop for now
+
+;; failed union branch --  value returned for numeric failure
+(setq |$numericFailure| (cons 1 "failed")) 
+
+(defvar |$oldBreakMode|)
+
+;; following macro evaluates form returning Union(type-of form, "failed")
+
+(defmacro |trapNumericErrors| (form)
+  `(let ((|$oldBreakMode| |$BreakMode|)
+	 (|$BreakMode| '|trapNumerics|)
+	 (val))
+     (setq val (catch '|trapNumerics| ,form))
+     (if (eq val |$numericFailure|) val
+       (cons 0 val))))
+
+;;;;;; considering this version for kcl
+;;(defmacro |trapNumericErrors| (form)
+;;   `(let ((val))
+;;      (setq val (errorset ,form))
+;;      (if (NULL val) |$numericFailure| (cons 0 (car val)))))
+
+;; the following form embeds around the akcl error handler
+#+:akcl
+(eval-when
+ (load eval)
+ (unembed 'system:universal-error-handler)
+ (embed 'system:universal-error-handler
+	    '(lambda (type correctable? op
+			   continue-string error-string &rest args)
+	       (block
+		nil
+		(setq |$NeedToSignalSessionManager| T)
+		(if (and (boundp '|$inLispVM|) (boundp '|$BreakMode|))
+		    (cond ((eq |$BreakMode| '|validate|)
+			   (|systemError| (error-format error-string args)))
+			  ((and (eq |$BreakMode| '|trapNumerics|)
+				(eq type :ERROR))
+			   (setq |$BreakMode| nil)			   (throw '|trapNumerics| |$numericFailure|))
+                          ((and (eq |$BreakMode| '|trapNumerics|)
+				(boundp '|$oldBreakMode|)
+				(setq |$BreakMode| |$oldBreakMode|)
+				nil)) ;; resets error handler
+			  ((and (null |$inLispVM|)
+				(memq |$BreakMode| '(|nobreak| |query| |resume|)))
+			   (let ((|$inLispVM| T)) ;; turn off handler
+			     (return
+			      (|systemError| (error-format error-string args)))))
+			  ((eq |$BreakMode| '|letPrint2|)
+			   (setq |$BreakMode| nil)
+			   (throw '|letPrint2| nil))))
+		(apply system:universal-error-handler type correctable? op
+		       continue-string error-string args )))))
+
+
 @
 \eject
 \begin{thebibliography}{99}
