Hacker News new | ask | show | jobs
by StreamBright 3649 days ago
I am not sure if this article was a joke or somebody seriously think that functional programming should be learnt by Ruby, JS and Scala. I have learnt much more by using Erlang, Clojure and some parts of OCaml. Learning for just learning programming in general and getting into the most popular languages is a different subject though. If I was to learn FP I would start with Elixir and probably with Racket just to learn a LISP dialect. It is much fun.
3 comments

The book Functional Programming in Scala is widely regarded as one of the best books on functional programming in any language. It has very little to do with the Scala language and everything to do with how you would write purely functional programs for the real world (file systems, concurrency, etc).
Sadly you did not reflect to anything I wrote. I bet the Scala book is pretty good, however I would still learn programming from SICP if I just wanted to learn how to write purely functional programs. This is just a matter of taste.
As most professional programmers do not get to choose which language to use the best way to learn functional programming that you can actually use is to implement pure functions in the language that you are required to use. Look at classic texts like Structure and Interpretation of Computer Programs for guidance on the abstractions rather than on the specific implementations.

I write as much as I can in functional style even though I have to use VB.Net.

Considering the popularity of JS and Ruby as a first language for many new programmers, I could see the argument that it would be useful in the sense of getting them to understand basic functional concepts in a more familiar environment.

Although, I agree with you: a Lisp (probably Racket or Scheme) is a much better bet for learning the functional style.

And SICP is a great book. :)