jww@bonnie.UUCP (Joel West) (02/19/85)
This summarizes the responses I received regarding my original message asking about "Clascal" or like attempts at making procedural languages object-oriented. I received a response from Apple (the address can be obtained by looking at net.micro.mac) that notes the following: <<We have recently changed the language substantially (mostly syntactic changes), in order to make it easier to teach. This version is currently running on the Lisa and compiling Macintosh-executable code. (It is now called Object Pascal, because the concept of a 'class' is not explicitly represented in the language.) ... [for] written information, write to the following address: Advanced Architecture Group Apple Computer 10455 Bandley Drive M/S 2-P Cupertino, CA 95014>> BYTE obviously has a lot of readers out there. Several readers wrote: <<The article titled "Software Frameworks" in the December 1984 BYTE magazine, starting on page 124, describes a bit about Clascal. It's not a very detailed description, but says enough to make it seem that they really do have an object-oriented Pascal. Seems like a pretty nice development environment.>> Someone pointed out C++: <<C++ is (in one sentence) C with Simula type classes added, but with more such as overloading. The special Bell Labs Technical Journal on the UNIX System (October 1984, part 2) has an article on it (titled "Data Abstraction in C++").>> C++ is developed as an internal AT&T enhancement via a pre-processor to cc(1). Within AT&T, there's even a newslist (att.lang.c++). Outside AT&T, unless you're a university, you can't lay your hands on the software. However the following set of documentation A C++ tutorial (within Bell Labs, refer to CSTR113) The C++ Programmming Language -- Reference manual (CSTR108) Data Abstraction in C++ (CSTR109) Operator overloading in C++ Complex arithmetic in C++ A Set of C++ classes for Co-routine Style Programming (CSTR90) can be obtained (as I did) by sending $25 to AT&T Technologies 1 (919) 279-3128 Software Sales & Marketing Guilford Center (PO Box 20046) Greensboro, NC 27420 I found the "Data Abstraction" article to be the best introduction to C++. Several responses suggested a privately sold Smalltalk-like object-oriented 'C' preprocessor: <<...a company called PPI (in Connecticut) markets a language called Objective -C. A good article about Objective-C can be found in the January 1984 IEEE Software (Vol. 1 #1). Objective-C looks like regular C, except that you can embed Smalltalk statements in the code.>> <<PPI is a company "Productivity Products International" in Sandy Hook CT. 203-426-1875. They sell an Objective C compiler ( preprocessor actually I think)...They offer training courses several times a year.>> There was interest in what I already know about 'Flavors'. I recommend the "Lisp Machine Manual," from the MIT Artificial Intelligence Lab, 545 Technology Square, Cambridge, MA 02139. In the book, which documents Zetalisp, flip to chapter 21 (pp.401-447 in the June 1984 edition) for an excellent discussion titled "Objects, Message Passing, and Flavors". A posting to net.lang.st80 noted that the Flavors of Franz Lisp is described by (Technical Report) TR-1226, available from: University of Maryland Computer Science Department Publications Office College Park, Maryland 20783 **MINIFLAME** Flavors is unusual in that is the only one I've found to allow multiple inheritance or "mix-ins", i.e. combining two classes to make a third. This is a very serious shortcoming of the other existing systems. *** Finally, my paper is tentatively entitled "Distributed Simulation in Object-Oriented SIMSCRIPT." If you want to know more or want one (when done in mid-April), drop me a msg or call. -- Joel West CACI, Inc. - Federal 3344 N. Torrey Pines Ct La Jolla 92037 jww@bonnie.UUCP (ihnp4!bonnie!jww) westjw@nosc.ARPA "The best is the enemy of the good" - A. Mullarney
rej@cornell.UUCP (Ralph Johnson) (02/21/85)
While the Smalltalk descibed in the books does not have multiple enheritance, the Smalltalk distributed by Xerox does.