[slime-devel] Square bracket reader sytax & SBCL Win32 & Slime: How to make them work together?
Tobias C. Rittweiler
tcr at freebits.de
Tue Jan 26 20:03:18 UTC 2010
Jason H writes:
> On Mon, Jan 25, 2010 at 7:14 PM, Nathan Bird wrote:
>
>> Jason H wrote:
>> > Hi,
>> >
>> > I'm learning CLSQL (4.3.0) with SBCL 1.0.33.4 Win32 and
>> > Slime (around 2009-12-03). I have troubles using square
>> > brackets in Slime. Entering the following into Slime's
>> > repl buffer:
>> > (clsql-sys:enable-sql-reader-syntax)
>> > (select [description] :from [asnFeatureType])
>> > will drop me into the debugger:
>> > The variable [DESCRIPTION] is unbound.
>> > [Condition of type UNBOUND-VARIABLE]
>> To rule out an error I've spotted a number of times, in the repl, try
>> disabling the syntax a bunch of times (no seriously, 3 or 4 times), then
>> enabling and see if it works.
>>
>> CLSQL tries to keep a chain of readtables, so you want to clear past
>> that and then try enabling.
>>
> Hi Nathan,
>
> Following your suggestion, here is roughly what I found:
> 1. With a fresh session of SBCL and Slime, evaluating
> (CLSQL-SYS:ENABLE-SQL-READER-SYNTAX)
> directly in the *slime-repl sbcl* buffer will make the
> square bracket reader syntax work.
> 2. Evaluating (CLSQL-SYS:ENABLE-SQL-READER-SYNTAX) in a file
> with C-c C-c will not enable sql reader syntax at all.
> In fact, with a fresh session of SBCL and Slime, after
> evaluating (CLSQL-SYS:ENABLE-SQL-READER-SYNTAX) in a file
> with C-c C-c, entering (CLSQL-SYS:ENABLE-SQL-READER-SYNTAX)
> directly in the *slime-repl sbcl* buffer won't get the
> bracket reader syntax work, either. Under such circumstances,
> the bracket reader syntax will work after you call
> CLSQL-SYS:DISABLE-SQL-READER-SYNTAX a few times (either in a
> file or in *slime-repl sbcl* buffer) and then call
> CLSQL-SYS:ENABLE-SQL-READER-SYNTAX in *slime-repl sbcl* buffer.
>
> As CLSQL-SYS:ENABLE-SQL-READER-SYNTAX works with straight SBCL without
> Slime, I'm cross posting the reply to slime-devel.
`C-c C-c' usually resolves to COMPILE-FILE + LOAD, both rebinding
*READTABLE*.
I'm not sure who's responsible for CLSQL nowadays, but I recommend to
make use of
http://common-lisp.net/project/editor-hints/ \
darcs/named-readtables/doc/named-readtables.html
which is supposed to help on using custom readtables.
My posting will probably bounce from the clsql mailing list; in that
case, please forward the message.
-T.
More information about the slime-devel
mailing list