post-Euclidean Tcl

CMcC: Euclid postulated a plane geometry based on some axioms [1 ]. The system created by those axioms allowed one to reason about shapes, and even about numbers.

One of the axioms stuck out as being somehow less 'self-evident' than the others. So after more than a thousand years of its perfectly servicable use, Riemann and Lobachevsky tried varying that axiom, and found new geometries which weren't planar but which were useful.

The Dodekalogue of Tcl forms a similarly axiomatic system, and several of the axioms might be revised, leading to what one could call post-Euclidean Tcl. I propose a systematic exploration of the results of modifying the axioms to explore the properties of the resulting near-Tcl languages.

The purpose of this exploration is to see what Tcl might become, to see which axioms are self-evidently useful (if not self-evident) and to see whether some axioms might be made simpler without loss.


hat0: I'll bite. Rule 6: what happens if braces are treated as having implicit whitespace? (e.g. if{ $x }{ puts "y" } is valid..)


Lars H: First some nitpicking: Riemann didn't do non-euclidean geometry the axiomatic way, but rather analytically; Riemannian geometry typically breaks more Euclidean axioms than just the parallel postulate. The other originators of axiomatic non-euclidean geometry are rather Bolyai and Gauss.

One furthermore shouldn't assume that the dodekalogue is "the axiom system of Tcl". For one thing, a lot of the things in there are more like definitions than axioms, and changing definitions usually doesn't have as far-reaching consequences as changing axioms (unless, of course, some axiom critically depends on that definition); the modification to rule 6 suggested by hat0 rather falls into this category: it's still basically Tcl but with a slightly different syntax (that might have broken {*} and ${...}, but those are fixable). Conversely, not all of the axioms of Tcl can be found in the dodekalogue; I'd say everything is a string is an axiom, and there are probably others. That said, the dodekalogue is probably no worse off than The Elements as such, because that too had definitions among the axioms and was missing other axioms.

Finally, a common mistake when contemplating alternative axiom systems for something is to (implicitly) presume that the new axiom must have the same form as the one it replaces. (E.g. "Given a line l and a point P not on l, there are 0 lines through P that do not intersect l".) It is sometimes possible to get something interesting that way, but it is more often necessary to do something quite different in order to nail down the theory as well as with the original axiom system. (hat0 sez: don't worry, I'm just startin' small!)