A long time ago the decision was made that instead of number and character literals representing their platonic value, they would just be variables that were already declared to have their platonic value. It was thought this was more consistent with normal variables.
Once worked with for a while it was realized that doing this made quoting far less useful as it wasn't easy to make say a quoted list of numbers etc. Also we are left with the fact that lists, vectors and strings are literals in the old sense.
Number and character literals have been added to the language. This fits with the fact that strings, vectors, and lists are literals. I see no conflict with certain symbols corresponding directly to functions. It is simply a short hand for writing the equivalent lambda expression. This is more efficient and consistent with Better Scheme as a programmer's scripting language.
The following literals are now supported:
#f
and #t
)#void
#\space
#\tab
#\newline
#\c
)#\xFF
)#\xFFFF
)jwalker@cs.oberlin.edu |