Problem with (READTABLE-CASE *READTABLE*)
Pascal Bourguignon <[email protected]>
| Newsgroups | gmane.lisp.ilisp.devel |
|---|---|
| Organization | InformatiMago. |
| Message-ID | <[email protected]> |
Hello,
When setting (READTABLE-CASE *READTABLE*) to :PRESERVE in clisp,
there's not problem:
[pascal@thalassa tmp]$ clisp -q
;; Loading file /home/pascal/.clisprc.lisp ...
;; Loaded file /home/pascal/.clisprc.lisp
[1]> (SETF (READTABLE-CASE *READTABLE*) :PRESERVE)
:PRESERVE
[2]> (FORMAT T "Hello World!~%")
Hello World!
NIL
[3]> (BYE)
[pascal@thalassa tmp]$
But doing the same in clisp under ilisp:
Starting /usr/local/bin/clisp -m 32MB -ansi -K full -I ...
i i i i i i i ooooo o ooooooo ooooo ooooo
I I I I I I I 8 8 8 8 8 o 8 8
I \ `+' / I 8 8 8 8 8 8
\ `-+-' / 8 8 8 ooooo 8oooo
`-__|__-' 8 8 8 8 8
| 8 o 8 8 o 8 8
------+------ ooooo 8oooooo ooo8ooo ooooo 8
Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
Copyright (c) Bruno Haible, Sam Steingold 1999-2002
;; Loading file /home/pascal/.clisprc.lisp ...
;; Loaded file /home/pascal/.clisprc.lisp
[1]>
[2]> (SETF (READTABLE-CASE *READTABLE*) :PRESERVE)
:PRESERVE
[9]> ;;;
*** - READ from
2. Break [11]> (FORMAT T "Hello World!~%")
Hello World!
NIL
3. Break [12]> ^D
*** - READ from
#<INPUT CONCATENATED-STREAM #<INPUT STRING-INPUT-STREAM>
#<IO SYNONYM-STREAM *DEBUG-IO*>>: there is no package with name "sys"
4. Break [13]> ^D
*** - READ from
#<INPUT CONCATENATED-STREAM #<INPUT STRING-INPUT-STREAM>
#<IO SYNONYM-STREAM *DEBUG-IO*>>: there is no package with name "sys"
5. Break [14]>
First, while typing "(FORMAT" we get this message ";;;
*** - READ from
2. Break [11]> (FORMAT"
Then, we cannot get out of the debug loop, because ilisp does not use
the right (all upcase) symbols.
I would suggest to convert to upcase all symbol in ilisp sent to the
lower lisp (including those in string literals).
In Common-Lisp, all the standard symbols are uppercase, even if the
default readtable-case setting is :UPPER which means that lowcase
input is automatically converted...
--
__Pascal_Bourguignon__ http://www.informatimago.com/
----------------------------------------------------------------------
There is no worse tyranny than to force a man to pay for what he does not
want merely because you think it would be good for him. -- Robert Heinlein
-------------------------------------------------------
This SF.net email is sponsored by: Microsoft Visual Studio.NET
comprehensive development tool, built to increase your
productivity. Try a free online hosted session at:
http://ads.sourceforge.net/cgi-bin/redirect.pl?micr0003en