Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!pt.cs.cmu.edu!sei!ajpo!eberard From: eberard@ajpo.sei.cmu.edu (Edward Berard) Newsgroups: comp.object Subject: Re: Evaluating "Object-Oriented" Programming Languages Summary: clarifications Keywords: object-oriented, programming languages, evaluation, bibliography Message-ID: <649@ajpo.sei.cmu.edu> Date: 11 Jan 90 15:30:43 GMT References: <638@ajpo.sei.cmu.edu> <706@cui.unige.ch> <644@ajpo.sei.cmu.edu> <753@cui.unige.ch> Lines: 80 In article <753@cui.unige.ch>, anders@cui.unige.ch (BJORNERSTEDT Anders) writes: [...] > Anyway I don't want to get into a useless debate on the differences and merits > of Simula and Smalltalk. I was mainly concerned with the history of > "oo-concepts", and strong typing. When you say > that there are "missing" features in Simula which some regard as essential > to an object-oriented language, I would be interested in hearing what > those features are. Not because I want to enter the black hole of > how we should define "OO", but because I suspect that many people > are not familiar with Simula and possibly do not understand what > features it has. Like yourself, I have no interest in such a "useless debate." Until now, I was quite happy to say that some in the object-oriented community considered Smalltalk to be the first "true" object-oriented programming language, and these many of these same people considered Simula an "immediate precursor" to object-oriented programming languages. However, this conversation has made me re-think my viewpoint. Specifically, having re-examined my Simula and Smalltalk texts, I tend to agree with you. While I would still argue that the term "object-oriented" seems to have originated in the Smalltalk efforts, that does _not_ mean that any programming language which pre-dates Smalltalk is not "truly object-oriented." I too, would be interested in hearing from anyone with a different viewpoint, i.e., that Simula is somehow not "truly object-oriented." [...] > AB>> I would argue that types are an old concept in object-oriented programming... > EB> > EB>Here you have me, sir. By not being more precise than I was, I have > EB>left myself wide open. I could argue your point by citing a classic > --------Deleted discussion on definition of typing------------------ > > I think you misunderstood me. I was not trying to be an obnoxious > philosopher claiming that Smalltalk is typed in some sense. > I agree that typing is a "new" topic with respect to Smalltalk. > What I meant was simply that Simula is strongly typed (according to > all reasonable definitions of strong typing (give me a break here)). > and hence types are not a new concept in OOP. You are right -- I did misunderstand you. Further, when you said, "Strong typing and 'dynamic binding of method' are theoretically _orthogonal_.", I read "orthogonal" (i.e., being completely independent of each other), and thought "mutually exclusive." I admit that upon a second reading, I saw my mistake. While I will grant that some strong typing schemes may "get in the way of dynamic binding," I will also state that strong typing and dynamic binding are hardly mutually exclusive. [...] > > Ok good, but going back to the original topic again "evaluation of OOPLs", > I don't think strong typing should be regarded as a discriminating feature of > OOPLs. I fully agree. I think that I was not clear enough in the first part of my original article. The intent was to to say that: - The criteria for judging whether a programming language is object-oriented seem to vary widely, with few people (e.g., Wegner) taking the time to express their criteria in detail. - For each candidate criterion there appear to be a number of "exceptions." Specifically, given a criterion (e.g., classes), there is at least one "object-oriented programming language" which "violates" the criterion (e.g., Self). - Many people fail to attach weights to each criterion, i.e., all criteria are equally important. Thank you for the discussion. -- Ed Berard (301) 353-9652