Xref: utzoo comp.lang.misc:2966 comp.lang.pascal:1855 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!elroy!ucla-cs!uci-ics!milne From: milne@ics.uci.edu (Alastair Milne) Newsgroups: comp.lang.misc,comp.lang.pascal Subject: Re: OOP features in Turbo Pascal 5.5 Message-ID: <15150@paris.ics.uci.edu> Date: 20 May 89 02:18:10 GMT References: <846@wucs1.wustl.edu> Sender: news@paris.ics.uci.edu Reply-To: Alastair Milne Distribution: na Organization: Educational Technology Center, Dept. of ICS, UC Irvine Lines: 34 grs@wucs1.wustl.edu (Guillermo Ricardo Simari) writes >Any comments about the OOP features in Turbo Pascal 5.5 >and Quick Pascal of Microsoft? Turbo Pascal 5.5? Last one I knew of was 5.0 . Is this a simple typo, or have a I missed an announcement from Borland? I don't know of "Quick Pascal". The only Pascal I know of from Microsoft is, as you would expect, MS Pascal. As in UCSD Pascal, Turbo 4, Mac Pascal, Modula-2, etc. the unit construct can be used quite effectively for creating a certain degree of object orientation -- though I would probably continue to prefer the term "abstract data types", since the unit feature doesn't directly support such features as message passing -- if it's going to happen, it must be of the programmer's creation. Nor do you have such properties as inheritance: rather, if you export a new type, you can also export routines which apply exclusively to objects that the client declares to be of that type. So how effective units are for object-orientation really depends rather heavily on how cleanly the programmer defines the interface of the unit -- types to be exported, operations to be exported for them -- and it can be as easy to export an inconsistent, unsecure, half-supported mess as to export a solid, seamless, fully-functional new data type. The syntax doesn't provide quite the guidance (or power) of, say, Ada packages. Units, of course, have quite a number of other advantages, especially if you know how to use them well. The list could run to a fair-sized essay, which I won't try to do here. Alastair Milne