On Wed, Aug 27, 2008 at 9:02 PM, Elf [EMAIL PROTECTED] wrote:
i believe that this is an error in chicken. there are two ellipses in the
pattern and only one in the output spec, so in both cases it should error
with
an invalid transformer spec notice. additionally, the 'a' isnt followed by
felix winkelmann wrote:
alexpander accepts this form, but gives an error if the lists are of
unequal length.
I believe this is the correct behaviour. Chicken gives an error only
when the first list is longer than the second, not when it's shorter.
Elf wrote:
the untest case is always
On Thu, 28 Aug 2008, Tobia Conforto wrote:
I believe it's only a matter of using a version of map that checks this
condition: that all its arguments become '() at the same time. Maybe it
would be useful to modify map itself in this way?
;; correct, this is an error
(map list '(1 2 3) '(10
(define-syntax test
(syntax-rules ()
((test (a ...) (b ...))
(quote ((a b) ...)
What happens if one calls this macro on two lists of different
lengths? According to various online tutorials, the expansion should
abort with an error. In current hygienic Chicken the behaviour
On Wed, 27 Aug 2008, Tobia Conforto wrote:
(define-syntax test
(syntax-rules ()
((test (a ...) (b ...))
(quote ((a b) ...)
What happens if one calls this macro on two lists of different lengths?
According to various online tutorials, the expansion should abort with an
error. In
Elf wrote:
Tobia Conforto wrote:
(define-syntax test
(syntax-rules ()
((test (a ...) (b ...))
(quote ((a b) ...)
i believe that this is an error in chicken. there are two ellipses
in the pattern and only one in the output spec, so in both cases it
should error with an
apparently its neither invalid nor valid. according to riastradh and others,
if i understood correctly, such behaviour is not covered in r5rs at all,
and some implementations do allow it , and some dont.
the untest case is always valid, the test case is only valid when input is
of the same