Here’s an exercise in separating fundamentals from conventions: if we held a technical summit with all of the galaxy’s advanced alien civilizations, what would we find we had in common, and what would we find inscrutable?
-
-
But mathematics would be shared. After translating syntax and symbols, we’d find we had exactly the same constructive axioms, and agree that other axioms are controversial. We’d have the same theorems and the same proofs. They’d rever a Pythagoras and a Leibniz.
Show this thread -
Now we compare programming languages. We’d find some low level constructs have developed very differently. Maybe they’d have balanced tertiary numbers instead of twos-complement and u-law fractional numbers instead of floating point. Our bitwise ops may have no analog.
Show this thread -
So, let’s ask: what parts of programming would we have in common? We’d share the mathematical integers, and data structures analogous to Cartesian products (structs) and sums (unions), and functions with side effects, and pure functions as a special case.
Show this thread -
We’d have transactions as a way of running concurrent operations atomically. We’d have most of Knuth’s algorithms in common (maybe they’d have some major breakthroughs we lack!)
Show this thread -
The goal of a high level programming language is to be something that we and these alien civilizations could agree on as universal and principled, and free of quirks and arbitrarity.
Show this thread
End of conversation
New conversation -
-
-
Inscrutable is a strong word. I’m sure we could decipher both (given proper instrumentation [which is technically possible to build since their biology permits it]).
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.