Re:What I wish a Ruby programmer had told me one year ago..
by silentbicycle on Wednesday April 28, 2010 @04:30PM
(#1302609)
Yeah, and after you're comfortable with ML or Haskell, try Prolog. Unification+backtracking is like pattern matching cranked to 12. As a bonus, a lot of the corners of Erlang will suddenly make more sense, and several Prolog implementations come with good libraries for constraint programming.
Also, not to nitpick, but Haskell isn't an ML dialect, and while my experience is with OCaml (not SML or F#), OCaml doesn't force you to do anything in a purely functional manner the way Haskell does - it just makes it an option. (I think this is a good thing, but I guess it's a downside when you're trying to force yourself to try new stuff.)
When you go back to coding in other languages, you approach the same problems in different ways because you were forced to solve them in a strongly typed functional manner.