[fpc-other] What makes a Compiler project (like FPC) special?

Nikolay Nikolov nickysn at gmail.com
Thu May 25 20:47:05 CEST 2017



On 05/25/2017 05:18 PM, Graeme Geldenhuys wrote:
> This is directed at Florian primarily, but any other FPC core member 
> is welcome to chip in.
>
> Since Florian mentioned that a compiler project is "rocket science" 
> [not his direct words, but he hinted at that] and totally different to 
> any other software project... It has really bugged me... Why is it 
> different, and What is different?
I'm not Florian, but I also have done extensive work on the compiler 
(including the 16-bit port).

The answer is: much higher complexity and much tighter coupling between 
the different components. Everything depends on everything, basically. 
And all of that's caused by necessity, not by bad design, because the 
task you're solving is very complex.

Of course, this applies to compilers of the scale of FPC. You can find 
much simpler and easier designs in compiler development textbooks, but they:

1) implement a trivial language
2) support only a single platform
3) do very minimal or no optimization

Nikolay


More information about the fpc-other mailing list