"This is madness!" "No, THIS IS TECO!" (Exchange between two programmers, ca. 1975... probably) --------------------------------------------------------- So, as i have announced in my last phlog entry, i have started to look into TECO, a real dinosaur in the kingdom of editors. TECO has its origins as an editor for tape (as in paper tape) based machines which is also the origin of its name: Tape Editor and COrrector And it shows in its syntax: If you have only a very slow method of data entry, you want to make the commands as terse as possible, and, oh boy, TECO is terse. After i got safe enough with TECO for regular writing and code editing (a process that took way less time than i have assumed) i wanted to look into the programming environment TECO has built in. Yes indeed: TECO is not only a editor, but has also its very own, Turing complete programming language with its very, very own syntax. Lets have a look at a simple example: !LOOP!QA-1UAQA"GQA=OLOOP No, i don't had a stroke and bashed onto the keyboard, this is valid teco syntax. Lets brake it down: !LOOP! <- sets the label for a jump point QA <- reads the content of register A (like a predefined variable) -1 <- subtracts 1 UA <- stores the result of former equation in register A QA <- reads the content of register A again " <- if G <- greater than zero QA <- reads content of register A = <- prints the content of the former O <- similar to GoTo LOOP <- target for the former Ok, now its obvious was this little snipped of code does: its decrementing the content of a variable and prints the content of the variable on each iteration. Its not looking THAT bad if you had previous exposure to some similar terse programming language like APL or K, but if you are coming from a more "sane" environment i would call it a good oportunity for brain jogging.