A recursive acronym is an acronym that refers to itself, and appears most frequently in computer programming. The term was first used in print in 1979 in Douglas Hofstadter's book Gödel, Escher, Bach: An Eternal Golden Braid, in which Hofstadter invents the acronym GOD, meaning "GOD Over Djinn", to help explain infinite series, and describes it as a recursive acronym. Other references followed, however the concept was used as early as 1968 in John Brunner's science fiction novel Stand on Zanzibar. In the story, the acronym EPT (Education for Particular Task) later morphed into "Eptification for Particular Task". Recursive acronyms typically form backwardly: either an existing ordinary acronym is given a new explanation of what the letters stand for, or a name is turned into an acronym by giving the letters an explanation of what they stand for, in each case with the first letter standing recursively for the whole acronym. Use in computing In computing, an early tradition in the hacker community, especially at MIT, was to choose acronyms and abbreviations that referred humorously to themselves or to other abbreviations. Perhaps the earliest example in this context is the backronym "Mash Until No Good", which was created in 1960 to describe Mung, and revised to "Mung Until No Good". It lived on as a recursive command in the editing language TECO.[3] In 1977 programmer Ted Anderson coined TINT ("TINT Is Not TECO"), an editor for MagicSix. This inspired the two MIT Lisp Machine editors called EINE ("EINE Is Not Emacs", German for one) and ZWEI ("ZWEI Was EINE Initially", German for two), in turn inspiring Anderson's retort SINE ("SINE is not EINE"). Richard Stallman followed with GNU (GNU's Not Unix). Recursive acronym examples often include negatives, such as denials that the thing defined is or resembles something else (which the thing defined does in fact resemble or is even derived from), to indicate that, despite the similarities, it was distinct from the program on which it was based. An earlier example appears in a 1976 textbook on data structures, in which the pseudo-language SPARKS is used to define the algorithms discussed in the text. "SPARKS" is claimed to be a non-acronymic name, but "several cute ideas have been suggested" as expansions of the name. One of the suggestions is "Smart Programmers Are Required to Know SPARKS". (this example is tail recursive) Examples Allegro: Allegro Low LEvel Game ROutines (early