[drakma-devel] [Bug Report] split-string behaves different in Lispworks and SBCL.

Edi Weitz edi at agharta.de
Tue Mar 6 19:09:49 UTC 2007


On Mon, 5 Mar 2007 17:13:09 +0900, "Jianshi Huang" <jianshi.huang at gmail.com> wrote:

> I updated drakma to 0.6.0 but found the cookie could not be parsed
> correctly in SBCL. So I traced down into the source code and found
> it's the problem of function split-string. But in Lispworks
> Personal, it works well. As the function split-string is a big
> extended loop macro. So I think it might be a bug in SBCL's loop
> facility. I also tested in Allegro CL and found it behaves the same
> as SBCL.  So which is correct?

I don't know.  Obviously, AllegroCL and SBCL both simply ignore the
(SETQ COLLECTOR NIL) form.  I took a brief look at the CLHS
description of LOOP but couldn't find anything specific which
supported either LispWorks or SBCL/AllegroCL except for the sentence
"The VAR argument is bound as if by the construct WITH" which for me
sounds as if LispWorks is right.

Any language lawyers on this mailing list?

Would you like to ask on the SBCL mailing list?

> Here's the function split-string in 0.6.0
>
> (10defun split-string (11string &optional (separators " ,-"))
>   "Splits STRING into substrings separated by the characters in the
> sequence SEPARATORS.  Empty substrings aren't collected."
>   (12loop for 13char across 14string

How did you manage to add those numbers there?

Cheers,
Edi.



More information about the Drakma-devel mailing list