4 ms·
Here is my take as someone who could but chooses not to use fp. When I look at “good haskell” I see it dominated with comments written in procedural english des
by duncanawoods 12y ago
Here is my take as someone who could but chooses not to use fp. When I look at “good haskell” I see it dominated with comments written in procedural english describing what the code does e.g.
http://hackage.haskell.org/package/pretty-1.1.1.1/docs/src/Text-PrettyPrint-HughesPJ.html http://hackage.haskell.org/package/pretty-1.1.1.1/docs/src/T...
Haskell requires this because, lets be frank, its really hard to understand. I can hear the howls of anger but if you ask “man in the street”, will he do a better job explaining the above haskell sans comments or a similar pretty printer written in VB? I have CS background, studied FP and type theory, but I am more like the man in the street.
What I want from a programming language is an executable description of what I want to achieve. I want that description to have all the good qualities sought in fp but more importantly I want it to flow into and out of my brain (and my colleague’s brains) like butter not like a sudoku puzzle trapped in a type theory proof and then Huffman encoded (because descriptive names are the preserve of all those "terrible java programmers").
In the real world, I need to write code that makes fast incremental changes to large interconnected data-structures e.g. graphs and trees with indexes and all sorts. I cannot begin to imagine how to solve half my problems with immutable data-structures. With what I know at the moment, it would be a massive obstacle to the real problems I need to solve.
- galaxyLogic 12y agoYes, readability. It's only half the story if you can be more productive when writing programs. Readability is probably more important because SW needs maintenance. And readability is not only about how fast YOU can read and understand Haskel. It's more about how fast other programmers can. Imagine all scientific papers were written in Latin. I think you make a valid point. Many comparisons of Programming Languages productivity only try to measure how fast you can code a new application in them, but not how fast you can modify an existing application to do something else - ASSUMING you are not the author of the original version.