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
_______________________________________________
fpc-other maillist  -  fpc-other@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-other

Reply via email to