Newsgroups: comp.object,comp.lang.eiffel,comp.lang.c++,comp.lang.smalltalk
Path: cantaloupe.srv.cs.cmu.edu!rochester!udel!news.mathworks.com!newsfeed.internetmci.com!news.sprintlink.net!mv!usenet
From: ENGR@GSSI.MV.COM (Michael Furman)
Subject: Re: Why is one OO language more productive than another?
Message-ID: <DDF172.4xp@mv.mv.com>
Nntp-Posting-Host: gssi.mv.com
Sender: usenet@mv.mv.com (System Administrator)
Mime-Version: 1.0
Organization: GSSI
Date: Wed, 16 Aug 1995 18:11:25 GMT
References: <40t027$7j9@hardcopy.ny.jpmorgan.com>
X-Newsreader: WinVN 0.93.10
Lines: 105
Xref: glinda.oz.cs.cmu.edu comp.object:36903 comp.lang.eiffel:10401 comp.lang.c++:144272 comp.lang.smalltalk:27258

In article <40t027$7j9@hardcopy.ny.jpmorgan.com>, jborkole@jpmorgan.com 
says...
>
>First let me say I realise that this could quite easily descend into a 
pointless
>'my thang is better than your thang', but I hope to glean some useful 
info
>before that happens. Sorry to those who care, if this is indeed what 
happens.
>
>I have often seen quotes stating that OO language X is 20 times more 
efficient 
>than OO language Y. I am intrigued. What is it about a language that 
makes it mo
>re
>or less efficient than another. Given the typical scenario, 'Smalltalk is 
10-20
>times more efficient than C++' (or vice versa depending on your 
preference), wha
>t
>is the difference between these two that results in this? Candidates 
include:
>
>Static / non-static typing systems.
>Extensive environment - browsers, etc.
>Large existing class library.
>Fundamental language features (other than typing).
>Conceptual integrity.
>

Agreed!

>My feeling is that static typed systems feel slower in a short time-frame 
but 
>tend to significantly faster in the medium to long term.
>Good tool support can increase productivity by a factor of 2 or 3.

I can't agree anymore:

  1. We have to define "productivity". Each project contains
two parts - problem oriented and software oriented - first of them usually 
comparable to
second one and sometimes much more difficult. Language may increase (or 
decrease) only
productivity of second part.
  2. Increasing productivity by factor by using tools possible only for 
small and partly 
for medium size projects. For large and very large progect it may be only 
additional constant -
time (and other resources) needed to design and develop appropriate tools 
- and by the way we 
can even save be developing specialized (for our problem) tools (language, 
library, debuggers,
e.t.c) vs using general ones.
  You can say that we will need much more experienced people to develop 
such tools. That is true,
but anyway we need them if we want our large project to be finished.
  

>Appropriate class libraries can boost productivity significantly, it is 
hard to
>say by how much but possibly anywhere between 3 and 20 times.
>Most OO languages have similar basic elements, support for encapsulation,
>abstraction, inheritance and polymorphism, these provide the core 
benefits
>of OO. New features like language support for the programming by contract
>metaphor seem intuitively to provide support for increased productivity 
but are 
>not widely accepted/proved. BTW my own view is that it is great. In 
summary the 
>basic support for core OO concepts in languages like Smalltalk, C++ and 
Eiffel
>is the same and this makes no significant difference.
>Conceptual integrity will affect productivity and clearly some languages 
have a 
>more
>solid foundation here than others. However I feel that this effects the 
early 
>learning process and not the long term effectiveness of the language - 
within
>reasonable bounds (even C++ has its conceptual consistency torch bearers 
you kno
>w).
>
>Sensible discussion solicited. (It may be that the only sensible 
discussion on t
>his
>topic is no discussion at all!)
>
>-----------------------------------
>I speak for myself and no one else.
>
>

-- 
--------------------------------------------------------------------------
----------
Michael Furman,                                   (603)893-1109
Geophysical Survey Systems, Inc.              fax:(603)889-3984
13 Klein Drive - P.O. Box 97                      engr@gssi.mv.com 
North Salem, NH 03073-0097                        
71543.1334@compuserve.com
--------------------------------------------------------------------------
----------

