[Larceny-users] A very broken error message

David Rush kumoyuki at gmail.com
Sun Aug 17 03:45:39 EDT 2008


The transcript below says it all. Yes, the macro is erroneous, but I
made this mistake in the middle of a much larger macro definition, and
well..."cdr: () is not a pair" just isn't very informative, although
now that I know what went wrong I can see how it would arise.

I don't know if this is bad enough to consider a bug, but I did want
to raise it in hopes of a better tomorrow :)

> (define-syntax foo (syntax-rules () ((foo bar? ...) (begin bar ...))))
(define-syntax foo (syntax-rules () ((foo bar? ...) (begin bar ...))))
WARNING from macro expander:
Redefining
foo
foo

> (foo x)
(foo x)


Error: cdr: () is not a pair.
Entering debugger; type "?" for help.
debug>

-- 
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt



More information about the Larceny-users mailing list