Blast from the past. . .
This week's blast-from-the-past is how I got started in the business of writing compilers. The first machine I ever wrote a program for was the Ollivetti Programma 101 calculator.
Link here on the blog to the Old Calculator Museum page about the Programma 101 including pictures: http://www.oldcalculatormuseum.com/c-programma101.html
The reason I mention this is that the first programming language I ever built was an interpreter, written for the PDP-8, that emulated the Programma 101. Building that, in assembly language, was hard work.
Having done that, in 1972, when I ran into Meta-PI, a so-called "compiler-compiler" I got quite excited. What Meta-PI, written by John O'Neil in 1986 while at RCA, http://hopl.murdoch.edu.au/showlanguage.prx?exp=5090
did was accept a BNF (Backus Normal Form) description of the syntax of your desired language and generate a parser similar to the YACC tool on Unix. But more importantly, and beyond just generating a parser, it allowed you to specify what textual output you wanted to generate at the terminal nodes of the language thus moving the output program from a simple parser to an actual compiler. Using Meta-PI I was able to develop a parser and then new compiler in a matter of days. It was compiler-writer heaven.
Podcast of the day. . .
Tables Turned
http://tablesturned.com/
This podcast focuses on helping independent musicians legally clear their music for podcast use.
Manic Minute recommendation: Knowledge is power, use it wisely!
And that's your Manic Minute for October 26th, 2005!
3:38:45 PM
|