Bert,
Thank you for bringing this message to my attention. I am on the 
squeak-...@lists.squeakfoundation.org, but only read a few of its messages 
since so few are about object orientation as Alan defined the term.

May be people have difficulties with class based languages because they are not 
object oriented  -- they are class oriented. 
Class based code does not reveal everything about how a system will work (GOF p 
23)
Object orientation is about interacting objects. A class describes everything 
about what an object will do when it receives a message. It says nothing about 
where the message came from or the context in which it was sent. Class oriented 
programming cannot say anything about how objects interact to achieve a common 
goal.The most important things about an object system is what happens in the 
space between the objects.

Alan Kay coined the term "object orientation":
“In computer terms, Smalltalk is a recursion on the notion of computer itself. 
Instead of dividing “computer stuff” into things each less strong than the 
whole--like data structures, procedures, and functions which are the usual 
paraphernalia of programming languages--each Smalltalk object is a recursion on 
the entire possibilities of the computer. Thus its semantics are a bit like 
having thousands and thousands of computers all hooked together by a very fast 
network. Questions of concrete representation can thus be postponed almost 
indefinitely because we are mainly concerned that the computers behave 
appropriately, and are interested in particular strategies only if the results 
are off or come back too slowly.”
I suggest you study this definition slowly and very carefully. If you find that 
you think in terms of classes, polymorphism, typing, or other paraphernalia of 
programming languages, you have missed the point and you need to start again. 
Because here is the key to understanding the difference between true object 
orientation and procedural programming. (I have come up with DCI as one way of 
realizing true object orientation in code). 

Classes are hard to understand; true object orientation is simple.

Cheers
--Trygve



On 2011.06.21 17:13, Bert Freudenberg wrote:
> 
> Maybe Trygve will explain? Not sure if he's reading the newbies list though. 
> CC'ing.
> 
> - Bert -
> 
> On 21.06.2011, at 16:27, Ron Teitelbaum wrote:
> 
>> Hi Erlis,
>>  
>> Class based language is very difficult for some people to grasp.  I’ve 
>> trained a number of programmers.  There is this AH moment when people get 
>> it.  Before that the idea is just so foreign to them that they have a 
>> difficult time grasping what is going on.  I would often get the question, 
>> “but where do I put the code”.  The answer is everywhere.  Thinking in terms 
>> of objects and programming their behavior makes sense.  People get that.  
>> Make a Robot and teach it how to walk.  If I tell the robot to walk she 
>> does.  Ok great.  Now I have all these objects that do stuff where do I put 
>> the code?  This is where people stumble.  In my opinion the leap to 
>> understanding is very short.  The answer is simple.  (Answer: It depends on 
>> how you want to interact with the user). 
>>  
>> I do not believe that anything is screwed up.  It is just a conceptual model 
>> that requires AH!
>>  
>> All the best,
>>  
>> Ron Teitelbaum
>> Immersive Collaboration Expert
>> 3d Immersive Collaboration Consulting
>> r...@3dicc.com
>> Follow me on Twitter
>> twitter.com/RonTeitelbaum
>> www.3dicc.com
>>  
>>  
>>  
>> From: beginners-boun...@lists.squeakfoundation.org 
>> [mailto:beginners-boun...@lists.squeakfoundation.org] On Behalf Of Erlis 
>> Vidal
>> Sent: Tuesday, June 21, 2011 9:47 AM
>> To: smalltalk
>> Subject: [Newbies] I don't get it
>>  
>> Hi guys, 
>> 
>> I was reading recently Jim Coplien ideas about DCI and I was surprised with 
>> the following statement: 
>> 
>> "The Smalltalk people, when they put together Smalltalk originally the 
>> computational model was exactly right, in terms of thinking in terms of 
>> objects. And then they screwed it up with the language. The language is so 
>> class focused! Most languages that we’re saddled with today had made this 
>> error."
>> 
>> you can find it here: 
>> http://blog.redtexture.net/2010/06/01/coplien-on-dci-mvc/
>> 
>> Does someone knows what Jim is criticizing? In which sense the computational 
>> model was screwed by the language? I see smalltalk as a language that 
>> express very well the intended computational model behind. 
>> 
>> But that's just me, maybe some of you could help me to understand Jim's 
>> point. 
>> 
>> Thanks
>> Erlis
>> _______________________________________________
>> Beginners mailing list
>> Beginners@lists.squeakfoundation.org
>> http://lists.squeakfoundation.org/mailman/listinfo/beginners
> 
> 
> 

-- 
Trygve Reenskaug       mailto: tryg...@ifi.uio.no
Morgedalsvn. 5A         http://folk.uio.no/trygver/
N-0378 Oslo               Tel: (+47) 22 49 57 27
Norway
_______________________________________________
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners

Reply via email to