Martin,
I re-read what I wrote and it is likely to not be very meaningful to you.
Let me try to demonstrate the point.
Suppose you wanted to implement an "if-only" statement in Scala.
Is this possible? I don't know Scala so I can't say but I would guess not.
In Python (which I do know) a statement like
if-only x > 0:
pass
would require a change to the compiler. A similar statement in Java
would also require a compiler change. An if-only statement in lisp is
trivial
to implement and would work with every other part of the language, as in:
(if-only (> x 0) (pass))
This would be a trivial in-class quiz for a lisp course.
When designing and developing lisp code it is common to create the
language you would like to implement by creating the language you
would like to implement but doing it in such a way that the language
is embedded in lisp in a "first-class operations" way. Macros allow you
to dynamically extend the compiler so "if-only" is new, first-class syntax.
The Axiom redesign question amounts to understanding the language
we would like to have to implement the support for Spad.... and then
understanding the language we would like to have to implement the
language that supports Spad... and then recursively repeating the process.
Tim
Martin Baker wrote:
On Monday 16 November 2009 04:35:00 Tim Daly wrote:
This is a request for design discussion for those who are interested.
Tim,
Can I ask a nieve question? If you were starting from scratch would you write
Axiom in lisp? I've no special axe to grind and no special technical
knowledge, I'm just asking out of curiosity.
It just seems to me that for Axiom to hit the bigtime:
* potential programmers and advanced users would want a modern graphical IDE
and useful error messages.
* non-advanced users would want a html-like interface that changes with the
fashion of the time (the look seems to be important these days).
I just wondered how practical it is to do all these things on top of lisp? As
opposed to say another functional language supported by something like the
Eclipse framework? When I first came across the spad language, a few weeks ago
now! I was really surprised how similar it is to the language Scala, without
knowing what the technical issues might be it would be interesting to know if
spad could be built on top of Scala?
Martin
_______________________________________________
Axiom-developer mailing list
Axiom-developer@nongnu.org
http://lists.nongnu.org/mailman/listinfo/axiom-developer
_______________________________________________
Axiom-developer mailing list
Axiom-developer@nongnu.org
http://lists.nongnu.org/mailman/listinfo/axiom-developer