4 ms·
In my opinion don't learn any LISP, Common LISP or Scheme, it doesn't matter. Why? Fragmentation. It's very hard to write something a bit complex that can run o
by marcocampos 17y ago
In my opinion don't learn any LISP, Common LISP or Scheme, it doesn't matter. Why? Fragmentation. It's very hard to write something a bit complex that can run on the various LISP compilers/interpreters without heavy changes. Also, there is a lack of good and up-to-date 3rd party libraries/frameworks which leads to having to write things that most languages already provide by default or than can be easily obtained.
Go with Scala, Clojure or Haskell. The first two run over the JVM and seem to have a very nice community behind them. Haskell is very cool and it will definitely change the way you look at programming.
There is also F# which is very cool and runs over the .NET framework. If you're into Microsoft stuff then it might be worth it.
- cema 17y agoWell, technically Clojure is a lisp, but it does indeed depart from the heavyweight lisp legacy as represented by Common Lisp. And portability is much easier when all your libraries are in JVM. :-) Scala started earlier than Clojure and has a bigger community around it. Clojure is clean and grows quickly, it has a very good potential. Besides, it has a strong and multifaceted support for parallel (multicore) programming. Both Scala and Clojure run on top of JVM and interop with it. Haskell has had a strong following in academia for quite a while now. Newer languages borrow from it. I have not tried F# which, as far as I understand, is a kind of ML on .NET. Its community seems to be smaller, but it may be due to the usual animosity some people feel regarding anything that comes out of Microsoft. Reportedly the language is well designed.
- marcocampos 17y agoMaybe F# acceptance will grow when Visual Studio 2010 comes out, since it will be one of three new native languages: IronPython, IronRuby and F#.
- cema 17y agoIt may happen, but it would compete with the well established Ruby and Python (in addition to C# and VB). Anyway, I am glad that they will be added to the bunch.