Eric Raymond revisits his biggest mistake, updates 'Pilot' language after 20 years
That's enough time to build a Cathedral, never mind a patch
Software luminary Eric Raymond has written an update to his Pilot computer aided instruction language … 20 years since he last bothered looking at it.
What was Pilot? According to Wikipedia, it was a precursor to LOGO: a computer-aided instruction program (its full name was Programmed Instruction, Learning, or Teaching).
Even writing a reference implementation in the first place was, Raymond says, a mistake, since as he writes here, “PILOT’s design was exceeded in awfulness only by the sloppiness and vagueness of its standard. Even after the corrections.”
The only thing Raymond picks out as interesting is that “the implementation is both an interpreter and a compiler (it’s a floor wax! It’s a dessert topping!) for the language – that is, it can either interpret the parsed syntax tree or generate and compile corresponding C code.”
He found himself feeling obliged to write the update because someone called Frank Lhota decided he wanted to port Pilot to use Bison and Flex, and “it's bad form to let fix patches drop on the floor”.
Here's the code. Go on: we dare you.
And if you're aware of a longer software refresh cycle, you know where we are. ®