[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

T Book Errata

Gentle readers:

It's dirty laundry time.  Here is a list of errata for the book:

        "The T Programming Language: A Dialect of LISP"
        Stephen Slade, 1987, Prentice-Hall.

I am confident that the diligent reader can uncover additional 
egregious errors.  Please let me know of same.


                        * * * * * * * * * * *

Copyright page.
    The scroll design used on the front cover should be attributed
    to Anni Albers.

chapter 1
p 4     line 5
    "several other LISP dialects" should read "Common LISP"

chapter 2
p 11    line 5
    extra prompt ">"  should be deleted

chapter 3 
p 51    first example
    "top-level list..." should read     "first top-level list..."

p 53    bottom of page
    second "(define x ... 'd)"  should be "(define y ... 'd)"

chapter 4
p 60    epigraph
    "(1986)"            should read   "(1987)"

chapter 9
p 152   middle of page
    remove the "whale" of type "fish"
    (this does not affect the execution of the code, but may be confusing)

p 157   middle of page
        "There are no iteration arguments in this example."  should read
        "count is the single iteration argument in this example."

p 164   "'error-in-sub-binary"  should read

chapter 11 (macros)

p 211   This definition of my-block0 has a hole in it:

    >(lset rest 6)
    >(my-block0 rest 4 5)
    #{procedure 4}

        See answers to this exercise for better solutions.

chapter 12 (structures)

p 225   middle third of page
    "T"                 should read     "#t"    (3 occurrences)

chapter 13 (objects)
p 239   insert following line before definition of make-person

        (define-operation (name-of self) (self))

p 239   middle of page

       (format port "#Person ~A ~A Age: ~A"

        should read

       (format port "#{Person ~A ~A Age: ~A}"

pp 239, 250, 252
        object examples have print methods which use "stream" as an identifier
        for a "port".  This is not wrong, merely confusing.

            ((print self stream)
             (format stream ...

        should read

            ((print self port)
             (format port ...

p 245   4 lines from bottom of page

            (set plist '((()))))

        should read

            (set plist (copy-tree '((())))))

chapter 14
p 266   middle of page
    "last digit is 4"   should read     "last digit is 6"

p 266   lower half of page
    "no longer find Jane" should read   "no longer find Hank"

p 276   bottom line of page
    "T"                 should read     "#t"

p 296   near bottom of page
    "Reagan is President" should read   "Washington is President"

chapter 16
p 323   bottom line of page
    "T"                 should read     "#t"

p 324   second line of page
    "T"                 should read     "#t"

p 324   bottom third of page
        "explicit coercion outines"
        should read
        "explicit coercion routines"
chapter 17
p 341   bottom of page
    "dead-code limination." should read   "dead-code elimination."

p 342   bottom of third paragraph
    "kernal"            should read     "kernel"

appendix a

p 359   bottom third of page
    "(define charn=     char)~"
    should read
    "(define charn=     char/=)"

p 359   add definition of T's last

    (define (t-last list) (car (last list)))

appendix c

p 371
    answer to no-zeros uses "equiv?" which has not been introduced.
    should use "equal?" instead
p 374   answer to exercise 4.7.6.
    "See the definition of append2, in section refappend-def, on page pagerefappend-def."
    should read
    "See the definition of append2, in section 8.3, on page 136."

p 391   definitions of "enter" and "ppp"
    indentation screwy (tabs problem)

appendix d

p 409   citation 2
    "To appear in SIGPLAN Notices"
    should read
    "Also in SIGPLAN Notices, 21/12, December (1986)."