[plt-scheme] quasiquote?
I think if you consider `(foo , at x , at y)
x must clearly be a proper list, so if you think that x and y should be of the same type, then they should be proper lists.
At 09:15 AM 1/13/2004 -0500, Joe Marshall wrote:
> For list-related administrative tasks:
> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>
>Doug Orleans <dougo at place.org> writes:
>
>> For list-related administrative tasks:
>> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>
>> Ken Anderson writes:
>> > I now see that args must be a list, which i assume means a proper list.
>> >
>> > At 11:37 AM 1/7/2004 -0500, Ken Anderson wrote:
>> > >> (define name 'sscanf)
>> > >> (define args '(string format-string . args))
>> > >> `(,name . ,args)
>> > >(sscanf string format-string . args)
>> > >> `(,name , at args)
>> > >. append: expects argument of type <proper list>; given (string format-string . args)
>> > >>
>> > >
>> > >>From my experience with Common Lisp i expected the two quasiquote expressions to print the same. Am i doing somethine wrong in Scheme or is this a bug?
>> > >I'm using 200alpha12 (iteration 0)
>>
>> Coincidentally, I just ran into the same limitation: unquote-splicing
>> only works on proper lists. (Actually the one I ran into was
>> unsyntax-splicing.) R5RS only says its argument "must evaluate to a
>> list", but it doesn't say proper list-- or is this always implied by
>> the spec? Anyway, is there a good reason not to extend it to work on
>> improper lists as well?
>
>I'd call it a bug.