mlajtos
Joined 5 years ago
Joined 5 years ago
On the surface, it blends APL and LISP. Making S/M-exprs terse and building “diamond-less” left-to-right APL on top. This part is pretty okay.
In core, unification of FRP and AD as already mentioned. This is mainly to do efficient online/incremental learning. Currently this is a disaster and main source of tech debt. I got some attacks.
Fun and curiosity is the main motivator. Having single system that can do user-editable explorable ML explanations is just cherry on top.
FORTRAN —"the infantile disorder"—, by now nearly 20 years old, is hopelessly inadequate for whatever computer application you have in mind today: it is now too clumsy, too risky, and too expensive to use.
He told the truth and in turn Fortran corrected its course, but Dijkstra probably didn't change his mind about it.
---
> These pioneers, even when they disagreed, had pretty precise arguments and very rarely feeling the feelies.
The feud between Backus and Dijkstra kinda persuaded me of the opposite.
https://medium.com/@acidflask/this-guys-arrogance-takes-your...
Dijkstra was highly influential in theoretical (proofs, algos) and practical (spec&compiler for Algol60) compuper science. But in reality he used his fountain pen disproportionately more than the computer.
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.
What I would like to know is how he would bend Algol 60 if he had tablet with pencil that could evaluate it in real-time.
Kinda hard to find where Dijkstra praised something (except Algol 60).
One funny example: he called FORTRAN "an infantile disorder", though he said this about the team behind it: "At that time this was a project of great temerity and the people responsible for it deserve our great admiration.".
On LISP: "LISP has jokingly been described as 'the most intelligent way to misuse a computer'. I think that description is a great compliment because it transmits the full flavor of liberation: it has assisted a number of our most gifted fellow humans in thinking previously impossible thoughts."
Alan Kay on Dijkstra: "Arrogance in computer science is measured in nano-dijkstras."
FORTRAN — "an infantile disorder"
COBOL — "the use of COBOL cripples the mind"
BASIC — students exposed to it are "mentally mutilated beyond hope of regeneration"
PL/I — "the fatal disease"
APL — "a mistake, carried through to perfection"
He liked his languages and programs to be easily traceable with pen & paper. He always wrote programs on the paper (and proved correctness) and only then into computer. REPL-driven development (what APL pioneered) was a foreign concept to him. He would be so appalled by LLM code generation.
Monadic/dyadic case for single glyph works nice only when you have a default value associated with it. For example `√16` is actually `2√16`. Or `log 100` is `10 log 100`. And `-3` is `0-3`.
Last sentence is epic.
There are 5 parts so far:
1. https://mlajtos.mu/posts/new-kind-of-paper – overview of the concept
2. https://mlajtos.mu/posts/new-kind-of-paper-2 – intro to Fluent notation
3. https://mlajtos.mu/posts/new-kind-of-paper-3 – inspirational prior inventions
4. https://mlajtos.mu/posts/new-kind-of-paper-4 - how to think efficiently (including longer demo)
5. https://mlajtos.mu/posts/new-kind-of-paper-5 – review of Apple Math Notes and suggestions for improvements
Keyboard version of Fluent is available here: https://mlajtos.github.io/fluent/?code=RG9jdW1lbnRhdGlvbg
Fair. Thank you :)