[fpc-pascal] Origin of FPC features
Frank Peelo
f26p at eircom.net
Tue Feb 10 15:16:51 CET 2009
Florian Klaempfl wrote:
> leledumbo schrieb:
>
>>I'm writing a paper about FPC and I need references where each language
>>feature comes from. So far, these are my what I know (some are guessing
>>though):
>>
>>Feature Original Dialect Additional Information
>>Separate compilation UCSD Pascal Unit based, not module (like Extended
>>Pascal)
Yay, go units! Pascal supports separate compilation -- as opposed to C,
which just tolerates it.
>>Primitive OOP Turbo Pascal C++ like
>>Modern OOP (including exceptions) Delphi Java like, though FPC was
>>born before Java ;-)
>
>
> Class like OOP: Delphi and the draft Object Pascal standard; exceptions: C++
By "Class like OOP", do you mean properties? Or only being able to
declare them on the heap, instead of allowing the programmer to choose?
Just curious about what the dividing line between "Primitive OOP" and
"Modern OOP" is considered to be, because TP's objects already had
inheritance, polymorphism, public vs private and all that good stuff.
Apart from the name change and having to be on the heap, ISTM it was
more an evolutionary process for a few years, OOP just got new features
with each new compiler release.
>>Assembler integration UCSD? Turbo? AT&T and Intel
TurboPascal got inline assembler in v6 IIRC. (Previously one had to do
the assembly externally, and use "inline()" or "external" to put the
bytes into the program.)
>>External references UCSD? Turbo? -
What they then? functions & procedures in another unit? Or
externally-assembled code?
UCSD Pascal had an "External" for procedures and functions defined in
separate assembler files. TP 3 also had it; maybe previous versions too
but I'm not that old.
Frank
More information about the fpc-pascal
mailing list