Newsgroups: comp.lang.apl
From: gurr@swag.0 (David Gurr)
Subject: Re: Proposals for Object Orientation
In-Reply-To: "Gfeller, Martin -Zurich K6"'s message of 10 Sep 94 16:22:20 GMT
Message-ID: <GURR.94Sep12195126@swag.0>
Lines: 36
Sender: news@mr.med.ge.com
Nntp-Posting-Host: swag
Organization: GE Medical Systems, Magnetic Resonance
References: <19940910.132220.15479@jupiter.sun.csd.unb.ca>
Date: 13 Sep 1994 02:51:26 GMT

In article <19940910.132220.15479@jupiter.sun.csd.unb.ca> "Gfeller, Martin -Zurich K6" <mgf@RMX.RISK.REUTER.DE> writes:


   > From: rockwell@nova.umd.edu (Raul Deluth Miller)
   > Message-ID: <ROCKWELL.94Sep7220555@nova.umd.edu>

   > Perhaps an object notation could buy efficiency in this area?

   I doubt. Message passing usually makes things slower; much slower if
   the implementation is not clever. I fear it might make APL too slow.

Object notation might promote the special caseing of frequent cases with
fast code.  An object oriented optimising interpreter like Self's generates
(automaticly) special case code with lots of optimization for the special
case.  Between these two, I would not be surprised if OO code in an APL
like language was faster than without OO.  This hypothesis is supported
by work in CLOS on a OO alternative to LAPACK the standard fortran
linear algebra package.  The OO Lisp code was equvelent to the Fortran in
speed.

(the Self stuff is reported in papers on self.stanford.edu, and the CLOS
stuff is reported in OOSLA don't remember what year, the system was called
Cactus and is part of Arizona, written at UWash.)

   The whole issue OO & APL will be the theme of an APL'94 workshop Bill Rutiser
   and I are jointly chairing. Do join us!

   /Martin


   --------------------------------------------------------------------
   Martin Gfeller, Reuters, Risk Management Software
   Kleinstrasse 6, CH-8008 Zurich, Switzerland; mgf@rmx.risk.reuter.de;
   Phone [+41 1] 258 7380; Fax [+41 1] 262 1792
   --------------------------------------------------------------------
-David Gurr

