Matt Emson memsom at interalpha.co.uk
Sat Aug 18 19:53:05 CEST 2001

Seeing as Borland essentialy 'popularized'  the 'class' style construction
in Object Pascal, following their conventions causes a whole heap less
heartache for Delphi programmers. I think you'll find that the number of
Delphi programmers outweighs the number of programmers using compilers with
the specification below. To be honest, every Pascal compiler that I've seen
pretty much goes down the Borland compatibility route. In fact, the only PC
based compiler that I know of which implements any of the ANSI/ISO standards
for Extended Pascal is the Prospero one, let alone this OO standard. That is
pretty well unused. GPC may support parts of the ANSI/ISO standards, or even
all of the Extended standard, but we all know how impractical GPC is.

I've tracked down a copy of the spec
(http://www.pascal-central.com/OOE-stds.html) and firstly it's out of date.
It's almost 10 years old. Delphi wasn't even released at this point. Whilst
I can see that Delphi borrows a lot from the spec, it also drops a lot of
the blatant garbage, such as Abstract classes and Multiple Inheritence.
Delphi is the defacto standard when it comes to Object Pascal, breaking the
Borland standard is bad. It not only depreciates the usefulness of FPC, but
it also alientates the very people that will come to use FPC from our
knowlege of Delphi. Name me one single compiler that uses this full spec
that is in popular ussage, and on an Intel or PowerPC platform.

I stand by my original comments. If you'd like a copy of the Borland Object
Pascal Grammar, I can scan/OCR it for you. Failing that, it's in the back of
the Delphi 5 Object Pascal Language Guide. The official Grammar for Class is
as follows:

ClassType -> CLASS [ClassHeritage]

I think that speaks for itself.


> At 12:44 18.08.01 +0100, you wrote:
> >Firstly, the class you define is not a valid Object Pascal class - if FPC
> >compiles it, the FPC is wrong.
> It depends :), ever looked into:
> Object-Oriented Extensions to Pascal
> Technical Committee X3J9, Programming Language Pascal
> The following DRAFT technical report was produced by the Technical
> Committee X3J9, Programming Language Pascal, a subcommitte of the
> Accredited Standards Committee, X3. The draft is public domain and can be
> freely used provided a reference to its source is made.
> Object-Oriented Extensions to Pascal
> September 20, 1993
> [...]
> When I started the classes support I worked with this document.
> _______________________________________________
> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
> http://lists.freepascal.org/mailman/listinfo/fpc-pascal

More information about the fpc-pascal mailing list