Is Scheme/Lisp somehow more "fundamental" than other languages?
Tracy R Reed
treed at ultraviolet.org
Tue Jan 22 13:57:46 PST 2008
chris at seberino.org wrote:
> As I learn Scheme I can't help thinking that it is more "fundamental"
> than other languages....that Scheme is what other languages would
> look like if we stripped out all the fluff and syntactic sugar.
That is exactly what it is. When you program in Lisp you are writing the
abstract syntax tree yourself instead of letting the parser in the
compiler produce it for you.
> This idea would be verified if someone could tell me that many other people
> have *implemented* other languages in Scheme/Lisp.
They have. Lots of them. But none that you are likely to have heard of.
Lisp is famous for creating "domain specific languages" or DSL's. You
will see that being done in SICP and the lectures. They create their own
little language/set of functions for doing some basic image
manipulation. This idea can be extended to many other areas. They do not
traditionally use Lisp to make other languages with really complicated
C-like syntaxes because people who code in Lisp tend to not like such
syntaxes and they are more work to implement.
> Yet, I'm afraid that most (all?) languages are implemented in C or assembly.
> Hence, C/assembly/register based machines will always be seen as the most
> "fundamental" or lower level.
Again, only the ones you are aware of. There are untold numbers of DSL's
out there in Lisp. And as far as C/assembly/register based machines go
look up what car and cdr originally stood for. And note that Lisp was
invented before C.
> I don't know much about the "Lisp machines" of way back. I assume they were
> just trying to optimize a typical register based CPU for Lisp. See? so even
> *Lisp machines* are implemented on top of register based machines/assembly.
They didn't optimize an existing register based cpu for lisp...
> What would really interest me is if someone invented a CPU whose hardware
> wasn't based on registers and C compilers but somehow built from the ground up
> to be a Lisp/functional processor.
This is exactly what Lisp Machines and Symbolics did.
More information about the KPLUG-LPSG
mailing list