[plt-scheme] on which programming languages best to spend your time?
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