summaryrefslogtreecommitdiff
path: root/doc/ref/r6rs.texi
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2010-06-19 12:43:40 +0200
committerAndy Wingo <wingo@pobox.com>2010-06-19 12:43:40 +0200
commitbfccdcd53006c1e74676e48d338349e4119b0af9 (patch)
treea3d75a7c70d509d541814385a9749f9b7228d661 /doc/ref/r6rs.texi
parent7034da249bdbc6067fe192c15bc9200847d0505d (diff)
downloadguile-bfccdcd53006c1e74676e48d338349e4119b0af9.tar.gz
add support for variable transformers: settable identifier syntax
* module/ice-9/psyntax.scm (set!): Handle variable transformers; though, they cannot produce definitions. (make-variable-transformer): New procedure. (identifier-syntax): Allow the R6RS form that makes variable transformers. * module/ice-9/psyntax-pp.scm: Regenerated. * doc/ref/r6rs.texi (R6RS Incompatibilities): Remove letrec* item, and add set! restriction.
Diffstat (limited to 'doc/ref/r6rs.texi')
-rw-r--r--doc/ref/r6rs.texi10
1 files changed, 5 insertions, 5 deletions
diff --git a/doc/ref/r6rs.texi b/doc/ref/r6rs.texi
index aee73c33b..c8bc8157c 100644
--- a/doc/ref/r6rs.texi
+++ b/doc/ref/r6rs.texi
@@ -25,10 +25,6 @@ Please let the Guile developers know if you find one that is not on this list.
@itemize
@item
-In the R6RS, internal definitions expand to @code{letrec*}, not @code{letrec}.
-Guile does not support @code{letrec*}, though that would be nice.
-
-@item
The R6RS specifies many situations in which a conforming implementation must
signal a specific error. Guile doesn't really care about that too much -- if a
correct R6RS program would not hit that error, we don't bother checking for it.
@@ -37,8 +33,12 @@ correct R6RS program would not hit that error, we don't bother checking for it.
Multiple @code{library} forms in one file are not yet supported. This is because
the expansion of @code{library} sets the current module, but does not restore
it. This is a bug.
-@end itemize
+@item
+A @code{set!} to a variable transformer may only expand to an expression, not a
+definition -- even if the original @code{set!} expression was in definition
+context.
+@end itemize
@node R6RS Standard Libraries
@subsection R6RS Standard Libraries