[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
syncase in boot-9
From: |
Andy Wingo |
Subject: |
syncase in boot-9 |
Date: |
Sat, 25 Apr 2009 00:53:53 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.0.92 (gnu/linux) |
Hello all,
A brief note. I have syncase in boot-9, with define-macro implemented in
terms of syntax-case. This work can be found on the syncase-in-boot-9
branch.
It's not quite ready yet, as there are some Scheme bits that still don't
compile. I had to add docstring support to psyntax -- surprising to
learn that other Schemes don't do docstrings. But the current linguistic
sticking point are idioms like this:
(if (something) (define foo bar))
or
(if (defined? foo)
(redefine foo)
(define foo))
The latter is used in define-class for class redefinition. The former
could be replaced with:
(define bar (if (something) new-bar bar))
And the latter cases could probably be reimplemented using syntax-case
instead of defmacro, but it's still really a shame that definitions and
expressions are different things.
Anyway, if you want to give it a try, checkout the syncase-in-boot-9
branch, and make -k, to step over the noncompiling scheme files. It's a
work in progress, but I will not be rebasing it.
Cheers,
Andy
--
http://wingolog.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- syncase in boot-9,
Andy Wingo <=