Hi John,

Some time ago I have posted my port of R5RS (+SRFI45) compatible 
expander called alexpander to this list (otherwise google for
alexpander+bigloo+bundle, or I can send it to this list again, if
needed). At some point it was even packaged as a library but somehow
never made it into the distribution. I am maintaining it as a local
mqueue.

I am a happy user of alexpander since ~2010 and can only recommend
using it for e.g., ML/Haskell-style pattern-matching or for extending
Bigloo with monads, miniKanren, fuller number-tower (rationals, complex)
etc.

Hope this helps,

Regards,
Peter

On Thu, 2013-11-21 at 17:23 +0100, [email protected] wrote: 
> This gives the expected output in other Schemes (tested racket, chicken,
> guile, kawa) but in Bigloo (4.0b) shows:
> 
> *** ERROR:let:
> No matching clause -- (hygiene.r5rs.mark1001let ((hygiene.r5rs.mark1001patt-
> var (hygiene.r5rs.mark1001quote hygiene.r5rs.mark1001z))
> hygiene.r5rs.mark1001...) (hygiene.r5rs.mark1001list
> hygiene.r5rs.mark1001patt-var hygiene.r5rs.mark1001...))
> 
> Here is the program:
> 
> (define-syntax macro1
>   (syntax-rules ()
>     ((_ form) form)))
> 
> (macro1
>  (define-syntax macro2
>    (syntax-rules ()
>      ((_ patt-var ...)
>       (let ((patt-var 'z) ...)
>       (list patt-var ...))))))
> 
> (display (macro2 a b c))  ;; Expected: (z z z)
> (newline)
> 
> Regards,
> -John


Reply via email to