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

sdl@linus.UUCP (Steven D. Litvintchouk) (08/27/86)

We at MITRE Corp.  have been looking into using the Smalltalk-80
programming environment as a software engineering environment to
support the development of real-time software systems to be
implemented in the Ada programming language.  (We in the U.S.
aerospace industry must deliver software in Ada, not Smalltalk.)  But
Smalltalk-80 provides a wonderfully user-extensible environment that
can do such things as:

1.  windowing, word processing, other mundane things (Question:  can
any Smalltalk-80 system, such as PS on Sun workstations, invoke tools
from the host operating system like Ada compilers?)

2.  Simulation/modelling/rapid prototyping of software systems that
are ultimately to be implemented in Ada

3.  Software reusability, by taking a Smalltalk class hierarchy and
	constructing its Ada equivalent (using Ada
	packages and compilation order semantics).  (You would 
	build a prototype/model class hierarchy in Smalltalk, and
	after modelling/simulation convinced you it was OK, you would
	then transliterate it to the corresponding Ada equivalent
	for the final product.)

4.  Research into Ada software performance.  The Ada programming
language includes facilities for multitasking, interrupt handling,
dynamic storage allocation/deallocation, etc.  Every Ada compiler
comes with a runtime library capable of doing such things.  We would
like to create a behavioral model (in Smalltalk) of a hypothetical,
generalized, instrumented, Ada runtime library, in order to learn
about the state of the art in runtime support for Ada multitasking and
storage management.

I plan to be at OOPSLA '86.  If anyone out there is also interested in
such "real-world" software engineering applications of Smalltalk,
please let me know; perhaps we could get together at OOPSLA and
compare notes.  Thanx very much in advance!!!


Steven Litvintchouk
MITRE Corporation
Burlington Road
Bedford, MA  01730

Fone:  (617)271-7753
ARPA:  sdl@mitre-bedford
UUCP:  ...{cbosgd,decvax,genrad,ll-xn,philabs,security,utzoo}!linus!sdl

lamy@utai.UUCP (Jean-Francois Lamy) (08/28/86)

In article <254@linus.UUCP> sdl@linus.UUCP (Steven D. Litvintchouk) writes:
>3.  Software reusability, by taking a Smalltalk class hierarchy and
>	constructing its Ada equivalent (using Ada
>	packages and compilation order semantics).  (You would 
>	build a prototype/model class hierarchy in Smalltalk, and
>	after modelling/simulation convinced you it was OK, you would
>	then transliterate it to the corresponding Ada equivalent
>	for the final product.)

At first glance this is going to be very hard. Emulating "virtual"
routines (i.e. when a subclass' routines redefines the superclass') is
not elegant not efficient (requires heavy and dirty use of generics).
Ada just isn't a good object-oriented language.

Jean-Francois Lamy
AI Group, Dept of Computer Science     CSNet: lamy@ai.toronto.edu
University of Toronto		       EAN:   lamy@ai.toronto.cdn
Toronto, ON, Canada M5S 1A4	       UUCP:  lamy@utai.uucp
-- 

Jean-Francois Lamy
AI Group, Dept of Computer Science     CSNet: lamy@ai.toronto.edu
University of Toronto		       EAN:   lamy@ai.toronto.cdn
Toronto, ON, Canada M5S 1A4	       UUCP:  lamy@utai.uucp