Teaching Haskell as a first language

I think functional is the best start...

Many say small talk because of small language and live coding...
But as soon as you get to "if"... which is an object..... and gets send a message... to do ... program flow... it all breaks apart ...

Even in Java you see more and more the use of the conditional operator, in which you most of the times return a constant or a result of a function....

You put values into a function, you let it compute and return it into another function... Transforming the return values is much more elegant in FP and the control flow is uniform... which helps newbies, because there is little guessing a little danger of creating a mess.... And when you read code, it's easier, which is part of learning... So even the pros are forced to use this uniformed way and it tells you more about the program....

Haskell has the amazing if-return all along. Better built into the main concept... Even the "loops" return a value (there are non, but list comprehensions), which is something I sometimes wish I had in Java to simplify the program flow.... I think this return value separates calculation from program flow in a very elegant way... which is something for example OOP is disastrous at...

Maybe scheme? It's syntax is very short too... Everything can be done with the same mechanism (function calls).... Everything except the live coding and eco system (which are kind of a big part of the whole, but other than that)

/r/haskell Thread