[fpc-other] Pascal and GCC: ancient history

Mark Morgan Lloyd markMLl.fpc-other at telemetry.co.uk
Fri Aug 1 12:50:12 CEST 2014


I'm not sure to what extent this is common knowledge, but while looking 
around for something else I came across 
http://people.cs.clemson.edu/~mark/s1.html which includes quotes from 
Richard Stallman about how he started off with a Pascal compiler from 
Lawrence Livermore Lab when writing GCC. This is possibly the most 
interesting bit:

"I didn't really know much about optimizing compilers at the time, 
because I'd never worked on one. But I got my hands on a compiler, that 
I was told at the time was free. It was a compiler called PASTEL, which 
the authors say means ``off-color PASCAL''.

"Pastel was a very complicated language including features such as 
parametrized types and explicit type parameters and many complicated 
things. The compiler was of course written in this language, and had 
many complicated features to optimize the use of these things. For 
example: the type ``string'' in that language was a parameterized type; 
you could say ``string(n)'' if you wanted a string of a particular 
length; you could also just say ``string'', and the parameter would be 
determined from the context. Now, strings are very important, and it is 
necessary for a lot of constructs that use them to run fast, and this 
means that they had to have a lot of features to detect such things as: 
when the declared length of a string is an argument that is known to be 
constant throughout the function, to save to save the value and optimize 
the code they're going to produce, many complicated things. But I did 
get to see in this compiler how to do automatic register allocation, and 
some ideas about how to handle different sorts of machines."

-- 
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]


More information about the fpc-other mailing list