loading a register or storing a value in memory. In contrast, a Lisp
machine processor reads an expression from memory, determines its
type, and recursively evaluates it. This operation lends itself to
-declarative programming, where the programmer declares an arbitrarly
+declarative programming, where the programmer declares an arbitrarily
complicated expression and asks the computer to evaluate it.
Another common feature of Lisp machine processors is the use of tagged
This module represents one half of the original design presented in
\cite{lambda}, and the ROM's contents are those from the paper with a
-bugfi (the original design sets the ADR line low in two states when it
+bug (the original design sets the ADR line low in two states when it
should be high).
\subsection{EVAL}
In STATE\_READ and STATE\_WRITE, the EVAL's reset line is high.
-Whenver the component corresponding to the current state indicates it
+Whenever the component corresponding to the current state indicates it
is finished, the controller advances to the next state.
The controller also includes three multiplexers that control which
((lambda append (x y) (if x (cons (car x) (append (cdr x) y)) y)) '(a b c) '(d e f))
\end{lstlisting}
-which is compiled to the sligthly shorter sexp:
+which is compiled to the slightly shorter sexp:
\begin{lstlisting}
(CALL (MORE (MORE (FUNCALL 0) (PROC (IF (LIST (VAR -2) (CALL (MORE (CONS 0) (CALL (MORE (MORE (FUNCALL 0) (VAR -1)) (VAR -2)) (CALL (CDR 0) (VAR -3)))) (CALL (CAR 0) (VAR -3)))) (VAR -3)))) (LIST (LIST (LIST (LIST 0) (SYMBOL 6)) (SYMBOL 7)) (SYMBOL 8))) (LIST (LIST (LIST (LIST 0) (SYMBOL 3)) (SYMBOL 4)) (SYMBOL 5)))
8 words are words 9th through 16th in the assembler output. The
following words are intermediate results computed by the processor.
-\item The REPL's pretty printer interpets this string starting with
+\item The REPL's pretty printer interprets this string starting with
\texttt{2005}, which means \texttt{(SYMBOL 5)}. The pretty printer
looks in the compiler's mapping and finds that the 5th symbol was
2, and so the REPL prints
The original paper \cite{lambda} is one of the influential Lambda
Papers that defined the Scheme programming language and is an
-important historical artifact for understading how Lisp machine
+important historical artifact for understanding how Lisp machine
processors can be implemented and more generally how tagged
architectures work. But all details of the processor cannot be
understood from simply reading the paper, and most readers would not