On Mon, Feb 25, 2008 at 10:25:17PM -0800, Andrew Lentvorski wrote:
David Brown wrote:
As far as the two directions, there is a difference. Python is pretty
much
defined as an interpreted language. There are people trying to make
compilers for it, but it's hard. Guido made a lot of design tradeoffs in
a
manner that works ok for interpretation but doesn't lend itself well to
compilation.
I'm not convinced. People said the same thing about Lisp for a lot of
years. After really smart people had 20 years to work on it, people got
pretty good at compiling it.
There are some things where Guide seems to be _trying_ to make Python hard
to compile, though. In fact, he seems bent on making it hard to even
interpret efficiently. I guess it's nice to be overly simple and let
computers and technology catch up with you.
One good sign is that Python is starting to get alternate implementations.
The language is still defined by a single implementation, though. Hard to
say if there will be any similarity to what has happened to lisp.
Common Lisp is still a rather hard language to implement efficiently,
though. There are a handful of fairly mature implementations, mostly based
on incrementally improved very old code. Clisp seems to be the main fresh
implementation, which is currently running with Python-like performance.
They're sticking with byte-code, although people are looking into JIT to
make it faster. Depending on the application, clisp can do similarly to
other lisps, or it can really drag. Tight loops over vectors and stuff do
poorly, higher level things are better.
David
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg