From: "Yohanes Santoso" <ysantoso-rubytalk / dessyku.is-a-geek.org> > E S <eero.saynatkari / kolumbus.fi> writes: > > > Everything is an Object > > I have never liked this over-generalised slogan. Without qualifying > it, then the sentence 'expression is an Object' would be true, yet > that is not true. > > It should be qualified as: every object is an Object. The word > 'object' there has two senses. The first and obvious one is instances > of Object or its descendants. The second meaning is data entity. While, "Everything is an Object" may be an exxageration, I think there's enough truth to it for it not to be a meaningless statement. In how many languages that claim to be OO are all data types, even integers, floats, and strings, Objects? And in how many are Classes themselves first-class Objects? In my admittedly limited experience, (Perl, Python, C++, Objective C, Java, Smalltalk), just one language. Oh, and ruby. Two languages. :) > > * Ruby is pure OO. > > I also have never liked this proclamation as everyone has their own > definitions of what OO is. This proclamation is worth not much more > than proclaiming the assembly language is 'pure OO'. Clearly[1], a language is OO if Alan Kay says it is. :) Since ruby borrows significantly from Smalltalk's object model, there's a good chance ruby is OO, too. <grin> [1] http://c2.com/cgi/wiki?HeInventedTheTerm Happy Rubying, Regards, Bill