[plt-scheme] on which programming languages best to spend your time?

From: Prabhakar Ragde (plragde at uwaterloo.ca)
Date: Thu Feb 26 18:50:23 EST 2009

Sigrid wrote:

> [At the moment, the scheme activity I'm doing is trying out some  
> interpreters from PLAI - first, having read SICP before, I was so  
> hubristic that I wanted to "just quickly read through this" but then I  
> recognized that I would only understand and learn things by really  
> using the code, and in the meantime I'm totally enthusiastic about  
> PLAI. Really, it's a fantastic book, for example, I've tried quite  
> some texts to understand continuations but none have helped me so much  
> as the PLAI chapters!]

If you are enjoying PLAI (and I have nothing to say to anyone who 
doesn't), I think that is the best use of your time at the moment -- 
each minute spent on those interpreters will save dozens when you move 
to languages where the features you have implemented are provided as 
part of the infrastructure. But do not dismiss the suggestion to read 
HtDP, as it has things to say to experienced programmers, and it 
emphasizes notions of style and design that are absent or too "implicit" 
in SICP. After that, I would recommend both ML (Paulson) and Haskell 
(Hutton, Hudak, Thompson), alternating with exploring the fascinating 
corners of the PLT Scheme distribution. Though perhaps I recommend this 
mainly because it is what I have done and continue to do.

I am not one to rely on for career advice, but I am not convinced that 
Clojure is worth your time at the moment. Scala, maybe, but a stronger 
case can be made for OCaML and F#, unless the JVM trumps all. But, as an 
academic, I would argue that the clarity and elegance of Scheme, ML, and 
Haskell will serve you better in the long run. --PR

Posted on the users mailing list.