On Fri, Mar 19, 2010 at 3:36 PM, Per Eckerdal <per.eckerdal@gmail.com>wrote:
Hi,
I have now polished and tested the rewrite of the hygiene system enough that I feel confident to release it. Hopefully it doesn't introduce too many bugs. Changes/new features include:
* Rewritten hygiene system. * The installation procedure has changed slightly, see the README. * The bugs with let-syntax and letrec-syntax are now zapped * It now writes warnings about missing symbol names when loading compiled modules * I added a better README for the github page * Better tests. Not good, but better.
With this, I hope that the problems with hygiene are fixed. There are still a couple of bugs, for instance with DSSSL parameter scoping, but they are not design flaws. The "only" big thing that remains now is to implement the syntactic tower.
Have a look at http://github.com/pereckerdal/blackhole/
Regards, Per _______________________________________________ Gambit-list mailing list Gambit-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/gambit-list
Great news! I just installed the latest version and it build just fine and seems to be working fine except that I have some problems with nested macros. If I have the following files: ;; File a.scm (define-syntax when (syntax-rules () ((when exp block ...) (if exp (begin block ...))))) ;; File b.scm (import a) (define-syntax foo (syntax-rules () ((foo id) (let ((id #t)) (when id 'foo))))) (foo bar) Then running module b.scm gives an 'Unbound variable: a#bar' -- tomppa