Path: utzoo!utgpu!utstat!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!bionet!ames!think!barmar From: barmar@think.COM (Barry Margolin) Newsgroups: comp.misc Subject: Re: Looking for Computer Folklore Message-ID: <36577@think.UUCP> Date: 21 Feb 89 23:44:11 GMT References: <7143@pyr.gatech.EDU> <532@geovision.UUCP> <4575@tekgvs.GVS.TEK.COM> <20373@coherent.com> <1051@vsi.COM> <112@cat.Fulcrum.BT.CO.UK> Sender: news@think.UUCP Reply-To: barmar@kulla.think.com (Barry Margolin) Organization: Thinking Machines Corporation, Cambridge, MA Lines: 39 In article <112@cat.Fulcrum.BT.CO.UK> igb@fulcrum.bt.co.uk (Ian G Batten) writes: >Multics Emacs was written and initially maintained by Bernie Greenberg. >Most of the source and comments were in Latin (dog and otherwise) and >various other foreign, obsolete and sometimes near-Lovecraftian tounges. >Not easy hacking. Then Barry Margolin took over. The comments in the >history file was along the lines of: > >;;; The glorious dawn on a new rosy age! Comments in English! Actually, Richard Soley was there for a little while between Bernie and me, and that one was his. In actual fact, most of the comments in Emacs (what few there were -- Bernie is brilliant, but not a very clear coder) were in English. The Latin comments were mostly in one module (e_redisplay_.lisp), and mostly confined to the change journal at the beginning. But you were right about some of the weird function names. A few years before Bernie wrote Multics Emacs, he reimplemented the Multics file system. One of the things he implemented as part of it was a salvager (like Unix fsck). One of the things it would do is walk up and down the hierarchies, and if it reached the top it would check that it was at the same file as it started, and report an error if not. Apparently he thought this was not likely to happen, so he put the message in Latin. I don't remember the original, but it translated to something like "Unto the root is born a brother." Needless to say, a few years after Bernie left the company, a site actually got this error, and was very confused (it comes out on the operator's console, and operators are not likely to be well versed in Church Latin). We reworded the error message in the next release. Finally, the subroutine in the salvager that reconnects orphan files is called reverse_deciduate. Barry Margolin Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar