Subject: hpff: OOPs programming in F90/HPF

From: "John K. Prentice" <[email-masked]>
Date: Tue, 26 Nov 1996 18:37:31 -0700

---------------------------------------------------------------------------
[email-masked] is a mailing list for announcements related to High
Performance Fortran.  Instructions for adding or deleting yourself
from this list appear at the bottom of this message.
---------------------------------------------------------------------------

The appended note is something I think the HPF community 
might find interesting.  Norton and his collaborators have
been working on paradigms for doing object-oriented programming
for scientific codes using Fortran 90.  Their papers are rather 
fascinating.  In their papers, among other things, they contrast 
F90 OOPs programming and C++ OOPs programming paradigms, noting 
the differences in the way OOPs programming is done with these 
two languages and discussing performance across several MPP and 
serial platforms.  

The real significance of the work these guys are doing seems 
to me to be that they are developing paradigms for doing true 
object-oriented programming with Fortran 90, including the use 
of inheritance (though a form of inheritance that is more 
restrictive than that in C++).  I have not seen anything this 
comprehensive on the subject before, so I highly recommend 
people taking a look at it.  It would be great to see HPF 
programmers adopting some of the approaches they suggest.

Maybe if we ask these guys, we can get them to come to the
February HPF meeting and discuss some of this?  How about
it organizers?

Regards,

John
---
Dr. John K. Prentice
Quetzal Computational Associates, Incorporated 
3455 Main Avenue, Suite 4, Durango, CO   81301-0201  USA
Phone: 970-382-8979  Fax: 970-382-8981
E-mail: [email-masked] 
WWW page: http://swcp.com/~quetzal/quetzal.html

----- posted to UseNet in response to something I posted ----------

Hello Everyone,

I would like to inform you of the following WWW site:

http://www.cs.rpi.edu/~nortonc/oof90.html

This site introduces much of our recent experiences as a following-up
to the Communications of the ACM article mentioned by John Prentice
including:

o Object-Oriented Fortran 90 programming.
o Performance and language comparison issues among Fortran 77,
  Fortran 90, and C++.
o Benchmarks for measuring the performance penalty of applying
  Fortran 90 features using standard and object-oriented methods.
o Additional examples, publication references, and presentation notes.
o Pointers to more information on these subjects.

As in the CACM article, we have studied the issues listed using
compilers on workstations and distributed-memory supercomputers.
Regarding performance comparisons to Fortran 90, our experience is
that performance varies based on the compiler used. However, some of
our recent Fortran 90 object-oriented programs now outperform the
Fortran 77 versions, and both still outperform our C++ programs.

Many of the publications on the web pages address other
paradigm-related issues, including the influence language features
have on abstraction modeling and the implications for scientific
programming. Preliminary tech-reports are available for publications
not accessible from the web.

If you have any comments on the web site (it is still in
development), or would like to contribute in some way, please
contact us.

Charles

-- 
----------------------------------------------------------------------
CHARLES D. NORTON                       IN TRANSIT FROM:
Jet Propulsion Laboratory
California Institute of Technology      Department of Computer Science
MS 168-522, 4800 Oak Grove Drive        Rensselaer Polytechnic Inst.
Pasadena, California 91109-8099         110 8th Street, Troy, NY 12180    
email: [email-masked]     [email-masked]

---------------------------------------------------------------------------
To (un)subscribe to this list, send mail to [email-masked].  Leave
the subject line blank, and in the body put the line
(un)subscribe <email-address>
---------------------------------------------------------------------------