News for hackers. Stuff that matters.
Re:Why the world needs Haskell by platz on Tuesday July 09, 2013 @10:25PM (#6017089)
Haskell is a puzzle language (http://prog21.dadgum.com/38.html).

I intend to learn some Haskell but I keep wondering if it might be more useful to spend some time with Clojure or F#

Re:Why the world needs Haskell by andolanra on Wednesday July 10, 2013 @02:27AM (#6017817)
It strikes me that 'puzzle languages' are just languages with non-mainstream semantics. If we lived in an alternate universe where the dominant paradigm was entirely pure, then those odd languages where any bit of code can change any part of the state of the program would be puzzle languages.

Hague defines puzzle languages by referencing the experience of realizing you're going down the wrong path and having to completely restructure your code; I have had this experience in Python and Java in the past, and conversely, I program in Haskell more or less daily and therefore almost never have that experience there any longer.

Re:Why the world needs Haskell by tome on Wednesday July 10, 2013 @04:54AM (#6018210)
Personally I find Python, Ruby, Lua, C to be "puzzle" languages. The puzzle is how to manipulate the primatives like arrays, pointers, dictionaries, etc. to express the natural, higher-level concepts that you really want, like map, fold, etc.

Programmers in my previous job would feel pleased with themselves if they'd solved the "puzzle" of an array processing loop which was a simple recursive function in disguise.

Re:Why the world needs Haskell by callmecosmas on Wednesday July 10, 2013 @03:30AM (#6017977)
Haskell certainly has a big learning curve, but the experience will be much more rewarding than learning Clojure or F#. Haskell is a (relatively) uncompromising language and Clojure and F# are really just trying to take some of the features of Haskell and bring them into the mainstream. So if you learn F# or Clojure it may help you if you ever try to learn Haskell, but if you learn Haskell, F# and Clojure will be trivial to learn.
Re:Why the world needs Haskell by Dewie on Wednesday July 10, 2013 @05:12AM (#6018285)
You could just as easily say that Python (one of the languages listed as non-puzzle) is a puzzle language because it lacks goto, so you have to puzzle out ways to model your control flow and looping into the more rigid while-loops, for-loops and if-else-branches. "I want to execute this block at least one time, but not necessarily the second, and I have to check these conditions here, but I have to declare the boolean variable over here... Oh my kingdom for a goto!"
Re:Why the world needs Haskell by spullara on Wednesday July 10, 2013 @12:48AM (#6017503)
People who program because they like puzzles, puzzle me. I like things that are straight forward and obvious when I program.
Re:Why the world needs Haskell by merijnv on Wednesday July 10, 2013 @05:52AM (#6018395)
> I like things that are straight forward and obvious when I program.

So do I, which is why I program in Haskell rather than the other languages which make me worry about a ton of irrelevant things like the global state of my program and don't let me enforce invariants of my code in the type system, guaranteeing I can't violate without making the type checker complain.

Re:Why the world needs Haskell by platz on Wednesday July 10, 2013 @01:31AM (#6017638)
Sure, but if you're mr. straight forward and obvious all the time, I bet your skills will plateau faster than the puzzler.
Re:Why the world needs Haskell by cgag on Wednesday July 10, 2013 @07:32PM (#6023537)
Straight forward and obvious meaning directly align with the first thing you learned when learning to program.

I like my languages straight forward, that's why I stick to English.