[comp.lang.smalltalk] language issues

code@sphinx.uchicago.edu (paul robinson wilson) (06/16/87)

In article <7116@linus.UUCP> sdl@linus.UUCP (Steven D. Litvintchouk) writes:
>
>We may soon have a need to train several engineers in using
>object-oriented techniques for discrete-event simulation and
>modelling.  (Languages such as Smalltalk-80 and Simula-67 come to
>mind.)
>
>We are therefore interested in finding out if there are any courses,
>tutorials, textbooks, etc., that are good introductions to this
>subject.  (Note what we are looking for is how to do object-oriented
>simulation and modelling in Smalltalk or Simula as opposed to software
>development.  We know of lots of books that teach simulation in
>Simscript and GPSS, but not simulation in Smalltalk or Simula; other
>than the Blue Book, which barely touches on the subject.)

I too am interested in this, and have several other questions as well:

  1) What are the emerging o-o standards?  Besides Smalltalk, are there
     any relatively standard languages with significant graphics?
     (e.g. are there standard graphics in SCOOPS or CommonLOOPS?)

  2) Where should I look for a good intro to issues in the design of
     object-oriented languages, especially simulation languages?
     (This might include comparing existing languages like C++ and
     Objective C, with an idea to the relevant tradeoffs.)

  3) Where should I look for info on the availability, features and
     performance of various O-O languages. (e.g. how fast is PARCPlace
     Smalltalk, is it available?)

My interest in these matters is twofold: (a) I have some ideas for the design
of a new kind of simulation language and would like to know the worthwhile
features of the current ones; and (2), I'm working on a debugger that will
eventually be visually interactive. (I would like to be able to write the
graphics in a pleasant, reasonably efficient language and maintain portability
between various brands of UNIX workstations.)

(These graphics may involve significant non-graphics-primitive computation
to figure out layouts, using a breadth-first marker-passing scheme.  We have
to be able to tweak this part to run at least a third or so as fast as C
code.  We don't mind bypassing the message-passing scheme now and then.)

Any information would be greatly appreciated.  If I get a good response and
people are interested, I'll summarize to the net.  Thanks.

| Paul R. Wilson       ph.: (312) 947-0740      uucp: ...!ihnp4!uicbert!wilson |
| Electronic Mind Control* Lab     if no answer: ...ihnp4!gargoyle!sphinx!code |
| UIC EECS Dept. (M/C 154)               arpa: uicbert!wilson@uxc.cso.uiuc.edu |
| P.O.Box 4348   Chicago,IL 60680        (* aka Human-Computer Interaction)    |

hwe@beta.UUCP (Skip Egdorf) (06/17/87)

Summary:We do Simulation in an O-O environment.


In article <1995@sphinx.uchicago.edu>, code@sphinx.uchicago.edu (paul robinson wilson) writes:
> In article <7116@linus.UUCP> sdl@linus.UUCP (Steven D. Litvintchouk) writes:
> >
> >We may soon have a need to train several engineers in using
> >object-oriented techniques for discrete-event simulation and
> >modelling.  (Languages such as Smalltalk-80 and Simula-67 come to
> >mind.)
> >
> >We are therefore interested in finding out if there are any courses,
> >tutorials, textbooks, etc., that are good introductions to this
> >subject.  (Note what we are looking for is how to do object-oriented
> >simulation and modelling in Smalltalk or Simula as opposed to software
> >development.  We know of lots of books that teach simulation in
> >Simscript and GPSS, but not simulation in Smalltalk or Simula; other
> >than the Blue Book, which barely touches on the subject.)
> 
> I too am interested in this, and have several other questions as well:

My group has been doing large discrete-event simulations in an Object-Oriented
environment for the last couple of years.

The main overhead is that it takes a good simulations person 6-9 months to be
trained to use these environments and methodologies. We have a Software
Engineering methodology based on Actors that is used for in-house training
that we developed precisely because we could find no information on how to
develop simulations in this environment.

We use Intellecorp's KEE on Symbolics, TI explorer, and (Lately) Sun
Workstations.
We have found KEE to be an excellent base for such work, with productivity
several times that of more conventional environments.
The KEE environment, while very rich, is not any sort of standard. I do not
believe that a standard exists that encompasses the necessary tools, graphics,
etc. required.

I think that the field might be ripe for a how-to book on simulation in the
Object Oriented environment. The biggest problem is just what environment
to describe??
Smalltalk is the closest thing to standard that includes graphics.
However, one of the biggest advantages that we have found to the KEE environment
is that an "AI" base that includes forward chaining allows us to attack
problems that include simulations of the human decision making process.
These simulations are just too hard to do in more "classic" environments.
Do we write a Smalltalk forward chainer for inclusion in such a book??
Or is there another environment out there that includes O-O, graphics,
a super development environment, and "AI" things??

					Skip Egdorf
					hwe@lanl.gov

lomow@calgary.UUCP (06/19/87)

In article <1995@sphinx.uchicago.edu>, code@sphinx.uchicago.edu (paul robinson wilson) writes:
> 
>   2) Where should I look for a good intro to issues in the design of
>      object-oriented languages, especially simulation languages?
>      (This might include comparing existing languages like C++ and
>      Objective C, with an idea to the relevant tradeoffs.)
> 

The best simulation package (object-oriented or otherwise) I
have seen is DEMOS; it was written by and is wholely owned by
Graham Birtwistle [Dept. of Computer Science, University of
Calgary, Calgary, Alberta, Canada].

DEMOS is a general-purpose, object-oriented, discrete-event
simulation package written in Simula. It provides an excellent
set of modelling concepts and simulation tools (some of which
have been incorporated into the Smalltalk simulation package).

My opinion is supported by Kreutzer who writes in his 1986
survey text of simulation languages

    [Kreutzer, W., 1986, System Simulation Programming Styles and
     Languages, Addison-Wesley International Computer Science
     Series, p.176]

that

    DEMOS is a very flexible and powerful modelling framework,
    ... In the author's opinion, it is currently the best tool
    available for any kind of discrete-event simulation. It can
    also be customised to give more support for specialized
    scenarios.

The design rationale for DEMOS is described in the following
sources:

    Birtwistle, G.M., 1979, DEMOS - A System for Discrete Event
    Modelling On Simula, MacMillan.

    Birtwistle, G.M., Lomow, G.A., Unger, B.W., Luker, P.,
    1984a, Process Style Packages For Discrete Event Modelling:
    Data Structures and Packages in Simula, Transactions of the
    Society for Computer Simulation, 1, 1, May, 61-82.

    Birtwistle, G.M., Lomow, G.A., Unger, B.W., Luker, P.,
    1984b, Process Style Packages For Discrete Event Modelling:
    Using Simula's Class Simulation, Transactions of the Society
    for Computer Simulation, 1, 2, 175-195.

    Birtwistle, G.M., Lomow, G.A., Unger, B.W., Luker, P., 1985,
    Process Style Packages For Discrete Event Modelling:
    Experience with the Transaction, Activity, and Event
    Approaches, Transactions of the Society for Computer
    Simulation, 2, 1, 27-56.

-- 
Greg Lomow
	lomow@cpsc.calgary.cdn
      or
	....![ubc-vision,ihnp4]!alberta!calgary!lomow