[net.lang.st80] Smalltalk-80 as an Ada software env

johnson@uiucdcsp.CS.UIUC.EDU (09/01/86)

It is actually easy to simulate (in Ada) having a subclass redefine a
superclass's method.  Each class is simulated by a separate package
and the package for a subclass contains a procedure for each method
defined in the superclass unless the method was redefined in the
subclass.  Thus, the Ada code contains no trace of the class hierarchy.

The hard part of simulating Smalltalk in Ada is when the class of an
object is not known.  For example, the collection of subviews of a
view contains objects of many classes, each of which can have a
separate definition of "display" (actually, displayView).  Part of
displaying a view is displaying all its subviews.  This problem could
be solved easily if Ada had procedure valued variables, but it is my
understanding that it does not.  Please correct me if I am wrong, I
am not an Ada expert.

Ralph Johnson
johnson@p.cs.uiuc.edu      uiucdcs!johnson