Ignore:
Timestamp:
Oct 13, 2010, 11:47:19 PM (9 years ago)
Author:
gb
Message:

Define standard I/O variables with DEF-STANDARD-INITIAL-BINDING; remove
redundant DEF-STANDARD-INITIAL-BINDING forms for these variables from
ccl:level-1;l1-boot.lisp. (Move some reader var definitions from l1-init.lisp
to l1-reader.lisp.) The effect of this change is that these variables
will be bound per-thread to integer/boolean constants, not to shared values
(that may or may not have preserved their initial values as of the time that
a thread is created.)

Define a macro - WITH-STANDARD-INITIAL-BINDINGS - and use it to ensure
that the initial thread runs the housekeeping loop (in the TTY lisp) and
the Cocoa event loop (in the IDE) with dynamic bindings in effect.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/source/level-1/l1-reader.lisp

    r13978 r14362  
    21832183;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    21842184
    2185 (defvar *read-eval* t "When nil, #. signals an error.")
     2185(def-standard-initial-binding *read-eval* t "When nil, #. signals an error.")
     2186(def-standard-initial-binding *read-default-float-format* 'single-float)
     2187
     2188(def-standard-initial-binding *read-suppress* nil
     2189  "Suppress most interpreting in the reader when T.")
     2190
     2191(def-standard-initial-binding *read-base* 10.
     2192  "the radix that Lisp reads numbers in")
     2193
    21862194(defvar %read-objects% nil)
    21872195(defvar %keep-whitespace% nil)
Note: See TracChangeset for help on using the changeset viewer.