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-application.lisp

    r13067 r14362  
    298298             :class 'tty-listener
    299299             :process initial-listener-process))))
    300   (%set-toplevel #'housekeeping-loop)
     300  (%set-toplevel (lambda ()
     301                   (with-standard-initial-bindings
     302                       (housekeeping-loop))))
    301303  (toplevel))
    302304
Note: See TracChangeset for help on using the changeset viewer.