Commit c5ecb8eb authored by Robert Goldman's avatar Robert Goldman

Make the *SHARED-READTABLE* be copy of the standard readtable.

Alternative approach to Fare's syntax control. Fare made this be the
initial readtable.  If this isn't too bad, I would prefer to break this
now, rather than end up needing to be backward compatible with broken
code forever. Especially since the *INITIAL-READTABLE* is not
well-defined (potentially it varies depending on when ASDF is loaded).
parent 8dc0778f
...@@ -50,15 +50,12 @@ It must never be modified in any way whatsoever. ...@@ -50,15 +50,12 @@ It must never be modified in any way whatsoever.
However, only SBCL is known to enforce this prohibition. However, only SBCL is known to enforce this prohibition.
Do not re-bind this variable.") Do not re-bind this variable.")
(defvar *shared-readtable* *initial-readtable* (defvar *shared-readtable* (copy-readtable nil)
"The shared readtable used by all Lisp software while building with ASDF. "The shared readtable used by all Lisp software while building with ASDF.
This shared readtable is usually the *initial-readtable*, in which case This shared readtable is a copy of the *STANDARD-READTABLE*: see the documentation
conservative readtable extensions are permitted and such extensions only; of that variable for more details. That allows changes, but should provide uniform behavior
see the documentation of that variable for more details. across implementations.
For even stricter enforcement against modifications at all, this readtable may be bound to This variable can also be bound to other readtables to implement various instrumentations
the *standard-readtable* (at least on SBCL); this helps enforce good behavior from all libraries,
but is not compatible with some older libraries.
This readtable can also be bound to other readtables to implement various instrumentations
by Lisp-to-Lisp compilers when (re)building software, presumably with a different fasl cache.") by Lisp-to-Lisp compilers when (re)building software, presumably with a different fasl cache.")
(defvar *shared-print-pprint-dispatch* *initial-print-pprint-dispatch* (defvar *shared-print-pprint-dispatch* *initial-print-pprint-dispatch*
"*print-pprint-dispatch* table shared by all ASDF systems. "*print-pprint-dispatch* table shared by all ASDF systems.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment