[fpc-devel] Alternative parsers

Marco van de Voort marcov at stack.nl
Wed Oct 20 12:52:58 CEST 2010


In our previous episode, Juha Manninen (gmail) said:
 
> Still, C would be doable, for porting SOME existing code to co-operarate 
> directly with pascal code. If the C code uses lots of library calls it can't 
> be used directly. But, there is code for math and compression etc. which don't 
> call libraries much.

The implementation is much easier I guess yes. But the interoperability
remains the same. You still won't be able to access C headers directly from
Pascal.

Moreover I think the goals of such project can be much easier accomplished
by having a C compiler that outputs (FPC) pascal source. 

> Languages like ADA, Modula (and Fortran ? and Basic ? ) would be
> realistic.

Modula2 is a special case since very related to Pascal. It needs some work
in the module handling (but that work can be recycled for other pascal
dialects that were inspired by that, like ISO Pascal too), but the main
problem is the lexer/parser, because M2 is case sensitive and has a
different block structure (which goes beyond merely being a pascal dialect).

The only other problem I can think of is that is primarily has unsigned
arithmetic, which might require enhancements/debugging on the semantic parts.


I think the same goes for Ada as for C++. The language is so huge, that it
is probably better to fork, throw away the pascal part, and then later when
the ada support is ok, backport the pascal part back into the Ada compiler.
(that will probably be somewhere near 2022)

I don't know fortran enough to comment, and Basic is so balkanized dialect
mess that nothing can be said about that without specification of what
dialect you mean.  I can only image VB here, but VB is very complex
internally, and the existing codebases are horribly windows specific). 
Moreover when it finally would be production ready, VB6 would probably be
near extinction.




More information about the fpc-devel mailing list