Guido van Rossum Interviewed
Qa1 writes "Guido von Rossum, creator of Python, was recently interviewed by the folks at O'Reilly Network.
In this interview he discusses his view of the future of Python and the Open Source community and programming languages in general. Some more personal stuff is also mentioned, like his recent job change (including the Slashdot story about it) and a little about how he manages to fit developing Python into his busy schedule."
Well, for one Lisp's syntax is FAR easier than Oz's. Oz borrows a lot of syntax from ML which possibly has one of the most barroque syntax I've ever seen. Next, macros are extremely nice, more people know Lisp and Scheme than people know Oz, etc. You are right that there is no good free cross-platform implementation of Common Lisp. Scheme has PLT Scheme which runs on all three major platforms (*nix, Windows, Mac). Paul Graham has an upcoming dialect of Lisp coming called Arc, which I'm sure he'll port to these three platforms. Oh, and Emacs+ilisp is by far one of the best development environment I've used (maybe only second to Squeak)
[Lisp] has a really steep learning curve, and there are no good free (as in software) development environments, as far as I know. (IANALisp Expert, though). Just you, Emacs and the Lisp interpreter.
Lisp is as powerful as mathematics, but there is more to a language than its semantics. It has to be accessible, too.
First off, Lisp isn't hard. It's like othelllo. Takes a day to learn and a lifetime to master. (gag)
My brief look at Oz seems to illustrate some similarities, but I'd have to check it out more to understand. Both have a core language set that everything else is reduced to. In lisp these are cons, car, cdr, cond, quote, apply, eval.
I'll take a look at Oz but what makes Lisp very powerful is that it has no syntax. The text is literally the parse tree which means that macros are very easy to define and use. The entire idea of programming using Lisp is to develop a language on top of Lisp. If you are writing an image editor you define an embedded language in Lisp for image manipulation. An because things can be compiled at runtime and macros can hide computation at compile time you can get good performance as well.
There is also a misconception that a language needs to explicit in what is efficient and inefficient. What is misunderstood is that it is very often not obvious where the bottlenecks are. The way to make a Lisp program fast is the same way you make a C program fast. 1) Profile 2) Find hot spots 3) Optimize 4) Rinse and repeat.
Also, concerning free development environment check out Dr. Scheme which is a nice UI and comes with a bunch of packages. I was working on some encryption problems and had a graphical histogram implemented in about 2 minutes. Try doing that in Java.
Lisp isn't designed for the average programmer. The best programmers use Lisp (if they are allowed to by their bosses) because it is the most powerful.
www.perl.com