-
Website
http://phildawes.net/blog/ -
Original page
http://www.phildawes.net/blog/2006/09/19/scheme-is-love/ -
Subscribe
All Comments -
Community
-
Top Commenters
-
danja
4 comments · 4 points
-
Dominic Sayers
1 comment · 1 points
-
ryantm
1 comment · 1 points
-
darrint
1 comment · 1 points
-
phildawes
5 comments · 1 points
-
-
Popular Threads
-
Phil Dawes Stuff >> Making tests less brittle
6 days ago · 2 comments
-
Phil Dawes Stuff >> Making tests less brittle
It's having to make decisions like these that make me nervous about learning a new language, and long for good old safe-but-boring Java. At least there's only one (for now).
I've settled on gambit for the moment because of termite. I'm hoping that the new library system in the upcoming r6rs standard will lead to more portable set of libraries and make the choice less all-or-nothing.
Re learning a new language: I think you're right to be nervous. The biggest problem is the Red Pill-ness of it all. Once you've hit upon a feature you like, especially one which gives a big productivity boost, going back to your old language is pretty depressing. I remember in the late nineties witnessing a bunch of jaded smalltalkers hit the java market - they had this constant 'things will never be the same' look about them.
http://scala.epfl.ch/
Not only has it all you can expect from a modern programming language (functional and OO-programming, an exceptionally good type-system which is statically but does not stand in the way, providing type inference, generators, sequence comprehensions), it also provides the ultimate answer to the old singel vs. multiple inheritence discussion: Traits.
And it has the additional bonus of running on a JAVA JVM, but you can also run it on .NET:
http://scala.epfl.ch/docu/clr/index.html
You will find a promising chapter "Abstractions for Concurrency" in "Programming in Scala":
http://scala.epfl.ch/docu/files/ProgrammingInSc...