comp.lang.ada
 help / color / mirror / Atom feed
* I need your experience - classification and comparison of languages
@ 2002-01-21  8:10 Yvan Radenac
  2002-01-21 14:44 ` docdwarf
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Yvan Radenac @ 2002-01-21  8:10 UTC (permalink / raw)


I am writing a small report about "Object oriented languages and their
public implementations" for a course in Software Engineering.
I am trying to classify and compare different oo languages.
As i am not programmer, analyst or responsible of projects and the
criterias are subjective, i am interesting in your experiences of
object oriented language(s).

I think that there's no universal language, so it's not to compare, in
a global way, each language.
The goal is to create some tables to find the best choice for a kind
of software development.

Thanks you to complete the 2 tables below for each language you use.

Classification:
--------------
Language|Paradigm(s)|Generality of use|Abstraction level|Area(s) of
application
--------|-----------|-----------------|-----------------|----------------------
        |           |                 |                 |

Comparison:
----------
It's based on this scale table (to simplify):
Very bad|bad|Correct|Good|Very good|
--------|---|-------|----|---------|
  - -   | - |   O   |  + |   + +   |

Language|Readibility|Writability|Reliability|Cost
--------|-----------|-----------|-----------|----
        |           |           |           |

Regards,
Yvan

P.S.: a resume of the criterias, based on a course of The University
of Ottawa by Szpakowicz:

Classification:
--------------
Paradigms: imperative, logic-based, functionnal, object-oriented, ...
Generality of use: general purpose, specialized like database
language, ...
Abstraction level: low-level (assemblers), high-level (a majority of
languages), very high level (Prolog)
Area of application: data processing (business applications),
scientific computing, artificial intelligence, in-house computing
applications (compiler construction, systems programming, ...)

Comparison:
----------
Readability:
  - abstraction, support for generality: procedural abstraction, data
absraction.
  - absence of ambiguity (and of too much choice).
  - Orthogonality: no restrictions on combinations of concepts. For
example, can a procedure parametrer have ANY type? Can EVERYTHING be
evaluated?
  - Expressivity of control and data structures. (Exemples of low
expressive power: machine languages).
  - Appearance: style of comments, ...
Writability:
  - Abstraction and simplicy like readibility.
  - Expressivity, like readibility.
  - Modularity and tools for modularization, support for integrated
programmer's environments.
Reliability:
  - Safety for the programmer (type checking, error and exception
handling, unambiguous naming).
Cost:
  - Development time (ease of programming, availability of code).
  - Efficiency of implementation: how easy it is to build a language
processor.
  - Translation time and quality of object code.
  - Portability and standardization.



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-21  8:10 I need your experience - classification and comparison of languages Yvan Radenac
@ 2002-01-21 14:44 ` docdwarf
  2002-01-21 20:11   ` Stephen J Spiro
  2002-01-21 15:09 ` Ted Dennison
  2002-01-22  2:24 ` James J. Gavan
  2 siblings, 1 reply; 9+ messages in thread
From: docdwarf @ 2002-01-21 14:44 UTC (permalink / raw)


In article <b9660815.0201210010.53b3266@posting.google.com>,
Yvan Radenac <yvan.radenac@equant.com> wrote:
>I am writing a small report about "Object oriented languages and their
>public implementations" for a course in Software Engineering.

Please do your own homework.

DD




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-21  8:10 I need your experience - classification and comparison of languages Yvan Radenac
  2002-01-21 14:44 ` docdwarf
@ 2002-01-21 15:09 ` Ted Dennison
  2002-01-22  7:54   ` Yvan Radenac
  2002-01-22  2:24 ` James J. Gavan
  2 siblings, 1 reply; 9+ messages in thread
From: Ted Dennison @ 2002-01-21 15:09 UTC (permalink / raw)


yvan.radenac@equant.com (Yvan Radenac) wrote in message news:<b9660815.0201210010.53b3266@posting.google.com>...
> I am writing a small report about "Object oriented languages and their
> public implementations" for a course in Software Engineering.
> I am trying to classify and compare different oo languages.
> As i am not programmer, analyst or responsible of projects and the
> criterias are subjective, i am interesting in your experiences of
> object oriented language(s).

You should definitely look at "Guidelines for Choosing A Computer
Language: Support For The Visionary Organization 2nd Edition" by
Patricia K. Lawlis
( http://archive.adaic.com/docs/reports/lawlis/content.htm )



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-21 14:44 ` docdwarf
@ 2002-01-21 20:11   ` Stephen J Spiro
  2002-01-22  0:38     ` docdwarf
  0 siblings, 1 reply; 9+ messages in thread
From: Stephen J Spiro @ 2002-01-21 20:11 UTC (permalink / raw)


docdwarf@panix.com wrote in message news:<a2h9h3$ggo$1@panix1.panix.com>...
> In article <b9660815.0201210010.53b3266@posting.google.com>,
> Yvan Radenac <yvan.radenac@equant.com> wrote:
> >I am writing a small report about "Object oriented languages and their
> >public implementations" for a course in Software Engineering.
> 
> Please do your own homework.
> 
> DD


Not fair, Doc.  He is doing generalized research on an extremely wide
field, in which he cannot possibly have personal expertise.  Given the
topic, and in spite of the refernce provided by another post-er, it is
sufficiently current and topical that there is probably very little in
the literature which is relavant.  "Field research", such as inquiring
of experts, is completely appropriate in such a case.

When I was in college, I had a "major paper" topic for which I could
not find a resolution.  I had done what I considered a very thorough
analysis of the literature.  Finally, I realized that one of the
frequent contributors on the topic was on the faculty of my school. I
looked him up, and aked him if there was (yet) a firm determination of
the Genetic Cause of Audiogenic Seizure Susceptibility in Mice. 
Rather than tell me to do my own homework, he invited me to sit down,
and told me what he knew.

I think, given the topic, Mr Radenac is entitled to the same courtesy.

{Just for the record, Doc, I usually back you up when you give that
advice.  For someone who just hasn't paid attention in class, or
hasn't cracked the book, it's FINE advice.  Mr Radenac's assignment,
on the other hand, requires a legitimate search for expert opinion.}

Stephen J Spiro



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-21 20:11   ` Stephen J Spiro
@ 2002-01-22  0:38     ` docdwarf
  0 siblings, 0 replies; 9+ messages in thread
From: docdwarf @ 2002-01-22  0:38 UTC (permalink / raw)


In article <928495c6.0201211211.4192730d@posting.google.com>,
Stephen J Spiro <stephenjspiro@mail.com> wrote:
>docdwarf@panix.com wrote in message news:<a2h9h3$ggo$1@panix1.panix.com>...
>> In article <b9660815.0201210010.53b3266@posting.google.com>,
>> Yvan Radenac <yvan.radenac@equant.com> wrote:
>> >I am writing a small report about "Object oriented languages and their
>> >public implementations" for a course in Software Engineering.
>> 
>> Please do your own homework.
>> 
>> DD
>
>
>Not fair, Doc.  He is doing generalized research on an extremely wide
>field, in which he cannot possibly have personal expertise.  Given the
>topic, and in spite of the refernce provided by another post-er, it is
>sufficiently current and topical that there is probably very little in
>the literature which is relavant.  "Field research", such as inquiring
>of experts, is completely appropriate in such a case.

What is being done, it seems, is a scattershot approach of gathering data 
from sources which cannot be verified: 'Well, I asked the question on The 
Internet and a bunch of folks told me...'

Is this how one 'create(s) some tables to find the best choice for a kind
of software development'?  It seems like GIGO to me.

>
>When I was in college, I had a "major paper" topic for which I could
>not find a resolution.  I had done what I considered a very thorough
>analysis of the literature.  Finally, I realized that one of the
>frequent contributors on the topic was on the faculty of my school. I
>looked him up, and aked him if there was (yet) a firm determination of
>the Genetic Cause of Audiogenic Seizure Susceptibility in Mice. 
>Rather than tell me to do my own homework, he invited me to sit down,
>and told me what he knew.

You familiarised yourself sufficiently with the discipline to learn the 
name of a frequent contributor, you did nto wander about the school, 
pasting notes on bulletin-boards.

>
>I think, given the topic, Mr Radenac is entitled to the same courtesy.

I think, given the quantity of learning and initiative Mr Radenac has 
shown, 'Please do your own homework' is *most* courteous.  Were he given 
utterly spurious replies - 'Sure, the *best* way to deal with screen i-o 
is found in COBOL '68, honest!' - how would he know who is pulling the 
long bow... *unless* he does his own homework, first?

>
>{Just for the record, Doc, I usually back you up when you give that
>advice.  For someone who just hasn't paid attention in class, or
>hasn't cracked the book, it's FINE advice.  Mr Radenac's assignment,
>on the other hand, requires a legitimate search for expert opinion.}

Mr Radenac has not shown that he has paid any attention anywhere, except 
to the examples his textbook gave... or did you see something I didn't?

DD




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-21  8:10 I need your experience - classification and comparison of languages Yvan Radenac
  2002-01-21 14:44 ` docdwarf
  2002-01-21 15:09 ` Ted Dennison
@ 2002-01-22  2:24 ` James J. Gavan
  2002-01-28 14:55   ` Yvan Radenac
  2 siblings, 1 reply; 9+ messages in thread
From: James J. Gavan @ 2002-01-22  2:24 UTC (permalink / raw)




Yvan Radenac wrote:

> I am writing a small report about "Object oriented languages and their
> public implementations" for a course in Software Engineering.
> I am trying to classify and compare different oo languages.
> As i am not programmer, analyst or responsible of projects and the
> criterias are subjective, i am interesting in your experiences of
> object oriented language(s).
>
> I think that there's no universal language, so it's not to compare, in
> a global way, each language.
> The goal is to create some tables to find the best choice for a kind
> of software development.
>

Yvan,

You've already been referred to one book. If your university has the following,
then it is a good reference covering all OO languages with the EXCEPTION of COBOL,
and of course, excluding any language du jour, which has popped up since the book
was printed :-

'Object Oriented Program Languages" - Handbook of Programming Languages Volume I.-
Peter H. Salus, Series Editor in Chief. (ISBN : 1-57870-009-4 ) -
Macmillan Technical Publishing, 1998.

To get a background on OO COBOL, (which has been around since '96), see the draft
for the next standard due December 2002  :-

        http://www.incits.org/tc_home/j4.htm

The draft (particularly Annex C) gives simple OO coding examples. Two things which
I am currently using which as yet are not part of the above COBOL standard,  (and
are still waiting to be determined)  :-

    - finalizing (destruction of objects - 'garbage' collection)
    - collections/dictionaries ( Those available from Micro Focus closely follow
the
      structures in Smalltalk.  If you are lucky, and your CS Department has a CD
      copy of  Micro Focus Net Express, University Edition - then you could access
      the on-line help to see the structure of collections/dictionaries.) Both
Fujitsu and
      Hitachi have collections - but I'm not aware of the details.

At the current time there are four vendors with OO COBOL compilers - IBM, Fujitsu,
Hitachi and Micro Focus, (the latter was temporarily under the name 'Merant'). IBM
is a very 'cut-down' version as they are having a re-think. No information is
available from Hitachi as it is only marketed in Japan. You can access the Fujitsu
and Micro Focus sites for further information. (Fujitsu is currently enhanced to
work with Microsoft .Net).

> Thanks you to complete the 2 tables below for each language you use.
>

Sorry that's a very subjective thing. I'd probably give COBOL high marks which
other language users might dispute <G>. (Although I have access to COBOL-designed
Java classes - currently I work TOTALLY in COBOL including classes for generating
GUIs).

Jimmy, Calgary AB

>
> Classification:
> --------------
> Language|Paradigm(s)|Generality of use|Abstraction level|Area(s) of
> application
> --------|-----------|-----------------|-----------------|----------------------
>         |           |                 |                 |
>
> Comparison:
> ----------
> It's based on this scale table (to simplify):
> Very bad|bad|Correct|Good|Very good|
> --------|---|-------|----|---------|
>   - -   | - |   O   |  + |   + +   |
>
> Language|Readibility|Writability|Reliability|Cost
> --------|-----------|-----------|-----------|----
>         |           |           |           |
>
> Regards,
> Yvan
>
> P.S.: a resume of the criterias, based on a course of The University
> of Ottawa by Szpakowicz:
>
> Classification:
> --------------
> Paradigms: imperative, logic-based, functionnal, object-oriented, ...
> Generality of use: general purpose, specialized like database
> language, ...
> Abstraction level: low-level (assemblers), high-level (a majority of
> languages), very high level (Prolog)
> Area of application: data processing (business applications),
> scientific computing, artificial intelligence, in-house computing
> applications (compiler construction, systems programming, ...)
>
> Comparison:
> ----------
> Readability:
>   - abstraction, support for generality: procedural abstraction, data
> absraction.
>   - absence of ambiguity (and of too much choice).
>   - Orthogonality: no restrictions on combinations of concepts. For
> example, can a procedure parametrer have ANY type? Can EVERYTHING be
> evaluated?
>   - Expressivity of control and data structures. (Exemples of low
> expressive power: machine languages).
>   - Appearance: style of comments, ...
> Writability:
>   - Abstraction and simplicy like readibility.
>   - Expressivity, like readibility.
>   - Modularity and tools for modularization, support for integrated
> programmer's environments.
> Reliability:
>   - Safety for the programmer (type checking, error and exception
> handling, unambiguous naming).
> Cost:
>   - Development time (ease of programming, availability of code).
>   - Efficiency of implementation: how easy it is to build a language
> processor.
>   - Translation time and quality of object code.
>   - Portability and standardization.




^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-21 15:09 ` Ted Dennison
@ 2002-01-22  7:54   ` Yvan Radenac
  2002-01-22  8:51     ` Samir Sekkat
  0 siblings, 1 reply; 9+ messages in thread
From: Yvan Radenac @ 2002-01-22  7:54 UTC (permalink / raw)


dennison@telepath.com (Ted Dennison) wrote in message news:<4519e058.0201210709.1ba1fbf2@posting.google.com>...
> yvan.radenac@equant.com (Yvan Radenac) wrote in message news:<b9660815.0201210010.53b3266@posting.google.com>...
> > I am writing a small report about "Object oriented languages and their
> > public implementations" for a course in Software Engineering.
> > I am trying to classify and compare different oo languages.
> > As i am not programmer, analyst or responsible of projects and the
> > criterias are subjective, i am interesting in your experiences of
> > object oriented language(s).
> 
> You should definitely look at "Guidelines for Choosing A Computer
> Language: Support For The Visionary Organization 2nd Edition" by
> Patricia K. Lawlis
> ( http://archive.adaic.com/docs/reports/lawlis/content.htm )

Thank you very much for this link, it' exactly what i need.

I post it to have the point of view of programmer, responsible of
project, ... cause of their different experience(s).
The real goal it's just to propose some tables to find the right
language for a type of deveolpment.
I think that each language have its own area of applications for a
type of development:
like Perl for rapidly create a test client for a smtp server
developped in C ...
I'm not interesting , YOU TOO a suppose, to find the badiest or the
best language but just the most usefull language for a area of
applications and a type of develpment (rapid, big project, ...).
I tried to find the most general criterias which be applied on each
language.
I use this interview to obtain a real result by a average of all
result.



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-22  7:54   ` Yvan Radenac
@ 2002-01-22  8:51     ` Samir Sekkat
  0 siblings, 0 replies; 9+ messages in thread
From: Samir Sekkat @ 2002-01-22  8:51 UTC (permalink / raw)


In article <b9660815.0201212354.33abbf98@posting.google.com>, 
yvan.radenac@equant.com says...
> I post it to have the point of view of programmer, responsible of
> project, ... cause of their different experience(s).
> The real goal it's just to propose some tables to find the right
> language for a type of deveolpment.
> I think that each language have its own area of applications for a
> type of development:
> like Perl for rapidly create a test client for a smtp server
> developped in C ...
> I'm not interesting , YOU TOO a suppose, to find the badiest or the
> best language but just the most usefull language for a area of
> applications and a type of develpment (rapid, big project, ...).
> I tried to find the most general criterias which be applied on each
> language.
> I use this interview to obtain a real result by a average of all
> result.
> 
you might give a look to
CL/CLOS Compared to Other Languages
http://www.franz.com/resources/educational_resources/clos_versus_other/



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: I need your experience - classification and comparison of languages
  2002-01-22  2:24 ` James J. Gavan
@ 2002-01-28 14:55   ` Yvan Radenac
  0 siblings, 0 replies; 9+ messages in thread
From: Yvan Radenac @ 2002-01-28 14:55 UTC (permalink / raw)


Thank you for your posts, it's the first time i use the news and my
english is far from perfect.
Thank you for all url you gave me.
It's a good beginning for my report.

I'm interresting in your experience as programmer, responsible of
projects, ....
As i will make a average of all results to obtain something the most
objective i can.

I found some old documents and comparisons (they are written between
1992 and 1997) or very subjective (like Java versus others by Sun,
...).

It seems that the languages the most used will be:
Ada (95), Beta, OCaml, CLOS, C++, Objective-C, Eiffel, Java, Modula-3,
O Oberon, Object Pascal (like Turbo-Pascal, Delphi, ...), Perl,
Python, Ruby, Sather?, Simula, Smalltalk.

I don't add to this list all the languages that have only a commercial
implementation, like VBA, ...
as i write a report about "oo languages and their public
implementation".

If you think i forget one or more oo common languages, let me know.

The result will be posted under the Free Documentation Licence from
GNU.

Of course, if you want to answer this table, thank you.

Regards
Yvan

Comparison:
----------
It's based on this scale table (to simplify):
Very bad|bad|Correct|Good|Very good|
--------|---|-------|----|---------|
  - -   | - |   O   |  + |   + +   |

Language|Readibility|Writability|Reliability|Cost
--------|-----------|-----------|-----------|----
        |           |           |           |


P.S.: a resume of the criterias, based on a course of The University
of Ottawa by Szpakowicz:
Comparison:
----------
Readability:
  - abstraction, support for generality: procedural abstraction, data
absraction.
  - absence of ambiguity (and of too much choice).
  - Orthogonality: no restrictions on combinations of concepts. For
example, can a procedure parametrer have ANY type? Can EVERYTHING be
evaluated?
  - Expressivity of control and data structures. (Exemples of low
expressive power: machine languages).
  - Appearance: style of comments, ...
Writability:
  - Abstraction and simplicy like readibility.
  - Expressivity, like readibility.
  - Modularity and tools for modularization, support for integrated
programmer's environments.
Reliability:
  - Safety for the programmer (type checking, error and exception
handling, unambiguous naming).
Cost:
  - Development time (ease of programming, availability of code).
  - Efficiency of implementation: how easy it is to build a language
processor.
  - Translation time and quality of object code.
  - Portability and standardization.



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2002-01-28 14:55 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-01-21  8:10 I need your experience - classification and comparison of languages Yvan Radenac
2002-01-21 14:44 ` docdwarf
2002-01-21 20:11   ` Stephen J Spiro
2002-01-22  0:38     ` docdwarf
2002-01-21 15:09 ` Ted Dennison
2002-01-22  7:54   ` Yvan Radenac
2002-01-22  8:51     ` Samir Sekkat
2002-01-22  2:24 ` James J. Gavan
2002-01-28 14:55   ` Yvan Radenac

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox