Hacker News new | ask | show | jobs
by Osmium 4164 days ago
I've never formally studied CS, but I can definitely see the benefit. I can divide my own (amateur) programming experience into pre-Haskell and post-Haskell. Before I started learning Haskell, I thought I knew how to use a good half a dozen or more programming languages. After I started learning Haskell, I realised I'd really only known how to use one all along, and that they were all fundamentally the same. I wish I'd had the experience sooner (plus, learning Haskell is just plain fun).
1 comments

If you liked the "I'd really only known how to use one" type of experience, then I encourage you to keep learning languages after you are happy with where you are with Haskell. My experience is that languages stop feeling like cohesive entities and start feeling like a collection of features.

The nontraditional categories I've encountered are something like:

The macro facilities in lisp, scheme, forth (or factor), template haskell, and C++ templates.

Array languages like APL, K, or R.

Prototype inheritance with smalltalk or Lua.

Avoiding side effects with Haskell, Ocaml, or C#'s linq.

The "we're serious about type theory" languages like Haskell, coq, agda, and idris.