|
|
|
|
|
by mlajtos
41 days ago
|
|
Very interesting flip! For much of his life, Dijkstra opposed functional programming. He even more strongly criticised FP from Backus and APL from Iverson, which are both very funcional/function-level. As he said, Java is a mess and any sensible person would oppose the switch from Haskell to Java. I am almost sure he never used any of them. Might have read about them, but highly doubt he run any on computer. As for the high-level status of Haskell and APL — both languages are very mathematical. Haskell goes very into the abstract realm of computation, while APL tackles very raw form of computation. Semantically, Haskell is way more high-level. In terms of economy of notation and unified concepts, APL has no match. |
|
[1] https://stackoverflow.com/questions/6622524/why-is-haskell-s...
Haskell have array-oriented programming embedded DSLs, like REPA [2] and Accelerate [3].
[2] https://hackage.haskell.org/package/repa
[3] https://hackage.haskell.org/package/accelerate
The most used (by me) Vector package has boxed (efficient) and unboxed (J-like) arrays. With these arrays having map, fold, scan, fromList/toList, zip and unzip combinators, one can have as terse (in the operator count sense) notation as one wishes for.