On Fri, Mar 19, 2010 at 3:36 PM, Per Eckerdal per.eckerdal@gmail.comwrote:
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'