Path: utzoo!attcan!uunet!lll-winken!lll-lcc!ames!ncar!gatech!udel!burdvax!ubbpc!wgh From: wgh@ubbpc.UUCP (William G. Hutchison) Newsgroups: comp.lang.smalltalk Subject: Smalltalk versus C++ Keywords: object-oriented languages Message-ID: <447@ubbpc.UUCP> Date: 3 Jan 89 17:53:05 GMT Organization: UNISYS CS, Blue Bell, PA Lines: 30 I am currently learning C++ and I have read about Smalltalk, but have not used it. I have seen some disparaging remarks about C++ from some Smalltalk gurus (or self-appointed experts) here. I was wondering what the real differences between the two languages are, and whether they are important. From my reading, it appears that (1) Smalltalk can create classes dynamically, whereas C++ does it at compile time; (2) In Smalltalk "everything is an object" whereas C++ treats the traditional C data types differently from programmer-defined objects; (3) Smalltalk has multiple inheritance, but C++ does not yet (shortly, I am informed); (4) Smalltalk may be designed in a way such that it has built-in overhead, and it may never be possible to make Smalltalk programs run as fast as C++ on present-day machine architectures (not sure about this, so I thought I would ask). To summarize, Smalltalk seems to have goodies that C++ lacks, but, since I am new to object-oriented programming, I do not perceive the need for these goodies. Would some experienced Smalltalk programmers comment on how they actually USE these non-C++ features? Saying that these features are nifty in the abstract is not the same as actually using them day-to-day. -- Bill Hutchison, DP Consultant rutgers!liberty!burdvax!ubbpc!wgh Unisys UNIX Portation Center P.O. Box 500, M.S. B121 "The unexamined life is not worth living!" Blue Bell, PA 19424 -- Educational Testing Service, Princeton, NJ