On Sat, 26 Jan 2008 00:07:52 -0600, Blake McBride wrote:
> I'd like to create an Algol-like syntax for Common Lisp. The syntax and
> semantics would always remain compatible with Lisp. The program would
> be written in Common Lisp. It would read in the new syntax and output
> Common Lisp (the first converter).
Since you've cross-posted to comp.lang.scheme, I'll point out that the
plt-scheme folk have Algol, Java(ish) and a more literal infix/scheme
syntax front end available ("Honu"). Not Common Lisp, but perhaps worth
a look, to see how successful or effective the effort is. They probably
have papers on it all, too.
> I'd also like to have the ability to read in Lisp and output the new
> syntax so that new syntax programmers would feel comfortable with code
> written in Lisp syntax (the second converter).
The PLT algol-syntax modules don't do this, as far as I know (haven't
actually tried them, myself.) I have a suspicion that the resulting code
might look "funny", simply because it's likely to be less imperative and
more functional than your target market is used to. C and Java code
doesn't spend a whole lot of time cons'ing, in my experience. (Sure,
that's not all of Lisp, either, but it does happen some of the time,
versus none at all...)
> Starting with something similar to Dylan would probably be a good idea
> since this is what they originally intended and a lot of thought was
> initially given in this area.
True. It would be really interesting to hear from insiders about some of
the forces that made keeping the ***pr version working hard.
Cheers,
--
Andrew


|