1.0.56: will be tagged as "sbcl-1.0.56"
[sbcl.git] / doc / manual / beyond-ansi.texinfo
index 08b942b..0c72409 100644 (file)
@@ -7,6 +7,7 @@ ANSI standard. SBCL doesn't support as many extensions as CMUCL, but
 it still has quite a few.  @xref{Contributed Modules}.
 
 @menu
+* Reader Extensions::
 * Garbage Collection::
 * Metaobject Protocol::
 * Support For Unix::
@@ -19,6 +20,28 @@ it still has quite a few.  @xref{Contributed Modules}.
 * Efficiency Hacks::
 @end menu
 
+@node Reader Extensions
+@comment  node-name,  next,  previous,  up
+@section Reader Extensions
+@cindex Reader Extensions
+
+SBCL supports extended package prefix syntax, which allows specifying
+an alternate package instead of @code{*package*} for the reader to use
+as the default package for interning symbols:
+
+@lisp
+<package-name>::<form-with-interning-into-package>
+@end lisp
+
+Example:
+
+@lisp
+  'foo::(bar quux zot) == '(foo::bar foo::quux foo::zot)
+@end lisp
+
+Doesn't alter @code{*package*}: if @code{foo::bar} would cause a
+read-time package lock violation, so does @code{foo::(bar)}.
+
 @node  Garbage Collection
 @comment  node-name,  next,  previous,  up
 @section Garbage Collection