
Hmm, can't resist commenting on this one! Bayley, Alistair wrote:
This was odd...
Some cherry-picked quotes from the manifesto: http://alarmingdevelopment.org/index.php?p=5
- Visual languages are not the solution: ... common idea is to replace AST structures with some form of graphical diagram. ...
Agree, point and grunt is much slower than entering commands. Its like being stuck in a country where you don't speak the language - all you can do is point at things and grunt ('click') and hope they understand you.
- Programming is not Mathematics
Disagree strongly... Bad programming seems to have little to do with mathematics, good programming often has the elegance of a well thought out proof. Beauty in programming is like beauty in mathematics.
- Change is natural: There has been much effort expended to remove the concept of mutable state from programming, to be replaced by immutable values as in mathematics. This is entirely misguided. ... Monads are a reductio ad absurdum. [ Heresy! :-) ]
Change is natural, but that has nothing to do with mutable state. Parallelism will make mutable state less attractive, as will hardware/software co-design. Isolating changes within a verifiable sandbox (like the ST/State monads) reduces errors due to unforseen interactions.
- Control flow considered harmful: ... The primary reason for this is to permit side-effects to be ordered by the programmer. ... [ This appears to contradict the criticism of monads. ]
Agree - control flow causes the possible paths (or corner cases) in the program to increase exponentially. Program correctness verification becomes much harder with more possible-paths. Keean.