Ask HN: I am bored. What programming language should I learn ?

Hi,

I know C, Python and Scheme, and I'm looking for an exciting or exotic programming language to learn.

Any suggestions ?

Thank you.

  • Haskell (e.g. http://learnyouahaskell.com). Learning Haskell is exciting (when the headaches subside ;)) and although becoming more popular Haskell can be considered exotic. The best part imo is that learning Haskell's functional concepts is useful for other languages as well.

  • What platforms or areas are you interested in?

    You know C, have you tried network programming or games programming or C on embedded systems?

    You can learn a lot by taking an existing language into a new area, it will sharpen up your skills better than learning a language without having a use for it.

    Experience is what makes good programmers not a laundry list of languages that you have never used in anger.

  • Erlang would be 'different' than those. Java would not be too exciting or exotic, but practical for many things. If you're not wild about Java, try coding for J2ME or Android... there's less BS in those environments than the 'enterprisey' stuff.

  • How about Oz?

    http://www.info.ucl.ac.be/~pvr/book.html

    With 900 pages to get through you'll never be bored again. ;)

  • Sounds like you're prepared. Try K/Q. Programming doesn't get much more exciting or exotic than that.

    http://en.wikipedia.org/wiki/K_(programming_language)

    For a taste of what it feels like, see http://kx.com/technical/contribs/eugene/kidioms.html . Most everyday programmers should find themselves intrigued at around number 11 (mesh).

  • C: Procedural language

    Python: (Batteries included) Scripting language

    Scheme: Functional/LISP language

    Looks like you should learn either an OO language (Smalltalk, OCaml, Scala) or a Logic language (Prolog).

  • Haskell or OCaml

  • Factor!

  • squeak smalltalk

  • Clojure.