Path: csiph.com!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Ben Bacarisse Newsgroups: comp.lang.javascript Subject: Re: Overriding function and adding a bit Date: Sun, 14 May 2017 15:37:29 +0100 Organization: A noiseless patient Spider Lines: 49 Message-ID: <87k25jbj2u.fsf@bsb.me.uk> References: <20479369.6Emhk5qWAg@PointedEars.de> <10849548.O9o76ZdvQC@PointedEars.de> <05f57f29-8dd8-4829-9952-7ffd20411fb5@googlegroups.com> <877f1kg4mz.fsf@bsb.me.uk> <579d836f-190f-488b-859a-2d1320aa8242@googlegroups.com> <878tm0edlc.fsf@bsb.me.uk> <87pofbbrkh.fsf@bsb.me.uk> <1717623.PYKUYFuaPT@PointedEars.de> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: mx02.eternal-september.org; posting-host="4567f39464f93982416bb7b5de1a8617"; logging-data="21608"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18esLQUNwHOUdq0q2USt5ZgxprbDMKMLVo=" Cancel-Lock: sha1:7U85xLjlh62DZs5zhJWmH2cjgXk= sha1:IexjQiuV/dI+E2ZrV6wzxxOymxU= X-BSB-Auth: 1.4709cceeff5ec846cada.20170514153729BST.87k25jbj2u.fsf@bsb.me.uk Xref: csiph.com comp.lang.javascript:33322 Thomas 'PointedEars' Lahn writes: > Ben Bacarisse wrote: > >> John G Harris writes: >>> In a video by one of the Smalltalk inventors, probably Alan Kay, the >>> speaker ended by saying that a language is Object Oriented *ONLY* if >>> it has *ALL* the features of Smalltalk. >>> >>> So >>> Strongly typed languages are not OO. >>> Languages where a garbage collector is optional are not OO. >>> Languages which don't call methods by sending messages are not OO. >>> >>> I think he was biased in favour of Smalltalk, too biased. >> >> Sure, but I don't think it matters too much because he's explicit about >> the definition he's using (or, indeed, invented) so the discussion can't >> be derailed by misunderstanding. I like it when people are passionate >> about technical matters, and I like having definitions that stake out >> the boundaries of concepts like this, even if they are not universally >> agreed upon. >> >> And I feel inclined to nit-pick a bit: I think you mean "static typing" >> rather than "strong typing". > > I think you mean static _type-checking_. Not really, though it would certainly do. I wanted to focus on the static analysis of types more generally including include languages without type declaration where the types are inferred. Obviously some of these might also check some types, but if the semantics are very forgiving there may nothing to "check" (in the usual sense of giving a type error). I don't imagine there are any such languages, but it was not the checking that mattered to me at the time I wrote the above. > If anyone doubts that e.g. Java (which does have static type-checking) is > an object-oriented programming language, they did way too much Small talk. Quite. These days the term obviously doesn't mean what Kay wants it to mean, and I doubt it did even at the time. Simula is usually described as object-oriented and dates form the mod 1960s. It may be that no one put the words "object" and "oriented" together before Kay did, but if he'd asked the Simula people, in 1967, if their programs were "object-oriented" I think they would have said yes because of the obvious meaning of the juxtaposition. -- Ben.