Waldek Hebisch wrote:
Adriaan van OS wrote:
Waldek Hebisch wrote:
I think that letting an object inherit from anything should work. In fact, one of my pet ideas is to let Pascal objects inherit from other language objects and vice-versa. AFAICS inheriting from Objective C objects is one of main CW Pascal extensions.
CW Pascal can not do this, but it would be a superb feature - interfacing directly with C++ and Objective C objects (e.g. GNU Step/Cocoa and Qt and many more OOP frameworks which we are more and more forced to work with).
Well, so what is:
http://pascal-central.com/cwpascal.html
describing?
Although it isn't clear from the text, it is describing *proposed* extensions. Some of the proposals got implemented in the compiler to some extent and others didn't.
Section 2, "Extensions providing compatibility with Objective C", of that document was never implemented.
The outcome for the section 1 is something of a mixed bag of some fully implemented, some partially implemented, and some never implemented.
Visibility of data fields - Implemented but the default visibility is public not protected as stated in the document.
Class declaration layout and Class forward declarations - I think those were implemented as stated but I've never done any eplicit testing to verifiy it.
Return directive - Implemented.
Anonymous types - I don't think it got implemented. I've never seen or heard of anything indicating it was, but I haven't tried any blackbox compiler testing to see if some sort of support for this actual got implemented in the last compiler(s).
Schemata - Implemented but the implementation is just a subset of what Extended Pascal requires for dynamic and schemata types.
Unit initialization - I suppose sort of implemented is about the best way to charaterize the status of that one. The compiler accepts the initialization code and generates the object code for it but there is some critical piece missing which stops it from getting tied in to the final executeable.
Complex data type - Not implemented.
In the interest of fairness, I'll note in closing that at the time "Extensions to CodeWarrior Pascal" was published, the Metrowerks Pascal compiler engineers (or so I believe) had every intent of fully implementing the described extensions. Unfortunately, corporate priorities and resource alloctations changed before the engineers could complete the work involved.
Gale Paeper gpaeper@empirenet.com