comp.lang.ada
 help / color / mirror / Atom feed
From: "James J. Gavan" <jjgavan@shaw.ca>
Subject: Re: I need your experience - classification and comparison of languages
Date: Tue, 22 Jan 2002 02:24:19 GMT
Date: 2002-01-22T02:24:19+00:00	[thread overview]
Message-ID: <3C4CCE5E.DC2187C2@shaw.ca> (raw)
In-Reply-To: b9660815.0201210010.53b3266@posting.google.com



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.




  parent reply	other threads:[~2002-01-22  2:24 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
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 [this message]
2002-01-28 14:55   ` Yvan Radenac
replies disabled

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