In the 1990s a piece of Germany’s air traffic control software ran on Emacs

A scary, but apparently true story. :slight_smile: Via Hacker News

In Germany, a Herr Doktor is always right (they have forgiven Moses by now for not having space on the stone tablets, but it really is the 11th Commandment). This one worked at Symbolics before so knew one programming language: Lisp. He wanted to code the message router in Lisp because of the “complex” (meh) requirements, but there was no Lisp (or no Lisp in budget) for HP/UX so he was stuck. I told him about Emacs, gave him my tape with the ports, and maybe that was a mistake :wink:

A week later - I helped out finishing the 4GL UI in the meantime and completed the messaging protocol - he called me in, quite happy. He showed me the code - page after page of Emacs Lisp, with exactly zero comments “because Lisp is self-documenting”. I got scared, it was an air traffic control system after all, but I was no Herr Doktor so I whipped up the DCE native code for Emacs, made a hack to have it start headless in message router server mode, and we got messages to flow. I did a code hand-over, and drove back home a couple of days later. The “self-documenting” code, as far as I know, landed in production so at least for a while, all ATC message routing in Germany was done through Emacs.

Pro tip: don’t look in the kitchen when governments brew up safety critical systems. I was scared to fly over Germany for a while…

4 Likes

Cute story, but why is Emacs Lisp any more scary than Perl, which has been used for passing on airline schedule messages for years.

1 Like

My take would be that using a headless editor is a bit of an odd thing to do - although using Lisp isn’t necessarily a bad idea. Entirely uncommented Lisp, though, that’s a bit of a challenge!

2 Likes

However – I may be wrong about this – Emacs may have been the best known Lisp runtime at the time. And Emacs ran on about every system. Still, a bit bizarre…

1 Like

I got quite familiar with French coding practises when I worked at GEC in the early 80’s and swore I would never put my life in the hands of anything written by French coders. Hence why I’ve never flown in an Airbus and never will.

It’s a common enough thing to run Emacs tests etc in headless mode.

1 Like