[comp.parallel] Program visualization for Concurrency

rce10845@uxa.cso.uiuc.edu (Robert C Elliott) (11/26/90)

Here is a summary of responses concerning "visual programming for concurrency."
Messages have been edited down mostly to just the bibliographic information and
signatures.

If there's interest, I will post a complete bibliography including other 
references in a few weeks (at the end of the semester).

Thanks to all who replied.

---[]---
From: "David C. DiNucci" <dinucci@cse.ogi.edu>
Organization: Oregon Graduate Institute (formerly OGC), Beaverton, OR

One reference:  Large-Grain Data Flow 2 (aka F-Nets).  Latest published
articles are in 21st HICSS 1988 proceedings, Compcon Spring '89
Digest of Papers, and CONPAR 90/VAPP IV proceedings.  All authored by
Robert Babb and/or Dave DiNucci.  (I would most recommend the Compcon
paper if you can get your hands on it.)

Dave
-----------------------------------------------------------------------
David C. DiNucci                             Oregon Graduate Institute
                                             (Formerly Oregon Graduate Center)
CSNET: dinucci@cse.ogi.edu                   19600 N.W. Von Neumann Dr.
UUCP:  ..ucbvax!tektronix!ogicse!dinucci     Beaverton, Oregon  97006


---[]---
From: "Oscar Nierstrasz" <oscar@cuisun.unige.ch>

[concerning graph rewriting for actor systems]

	%A S.K. Goering
	%A S.M. Kaplan		(University of Illinois)
	%T Visual Concurrent Programming in GARP
	%B Proceedings PARLE '89, Vol II
	%S Lecture Notes in Computer Science 366
	%E E. Odijk, J-C. Syre
	%I Springer Verlag
	%P 165-180
	%C Eindhoven
	%D June 1989

There is a more recent working paper presented at the OBCS
workshop at OOPSLA two weeks ago.

Kind regards, Oscar Nierstrasz

-------------------------------------------------------------------
Dr. O.M. Nierstrasz                 | Tel:    41 (22) 787.65.80
University of Geneva                | Fax:            735.39.05
Centre Universitaire d'Informatique | Home:           733.95.68
12 rue du Lac, CH-1207 Geneva       | E-mail: oscar@cui.unige.ch
SWITZERLAND                         |         oscar@cgeuge51.bitnet
-------------------------------------------------------------------


---[]---
From: evans%kaibab@cs.utah.edu (John Evans)

Hi, 

  My name is John Evans. I'm at the University of Utah.  We've been
developing a visual programming language and tools for 
parallel programming.  

I'll give a brief description. Individual process code is generated in
a base language (Scheme is implemented) using a text editor.
Communication between processes is via 'channel' objects that manage
synchronization and message passing. Networks of processes (network
modules) consisting of processes,  channels and nested network modules
are defined graphically using an X window interface program. The
interface generates source code for the network modules (three target
concurrent languages are supported: Butterfly Scheme, Concurrent Utah
Scheme and DPOS Scheme).  The graphical language constructs provide
for several coexisting communication semantics, for dynamic process
creation, and for recursively defined network modules. A graphical
debugging tool is also used that allows the programmer to animate the
program diagrams showing communication events, process creation
events, error messages and process print messages.

If you're interested we have a paper, tech. report and manuals on the
system.

John Evans


---[]---
From: Gad Aharoni <gadi@shum.huji.ac.il>
Organization: The Hebrew University of Jerusalem

In article <11476@hubcap.clemson.edu> you write:
>I'm looking for papers on how visual programming can be used to
>represent concurrent processes.  Can anyone recommend some references?
>

Try looking up work by David Harel from the Weizmann Institute of Science,
Israel. They have a tool that implements "state charts". 

[A statechart reference is listed below by Prof. Eric Golin - also, there is
Harel's "On Visual Formalisms" in May 1988 Communications of the ACM]

Gadi
--
Gad Aharoni                                              TEL: +972-2-584932
BITNET: gadi@humus.bitnet           CSNET & INTERNET: gadi@humus.huji.ac.il
Snail: Dept. of CS, Hebrew University of Jerusalem, Jerusalem 91904, Israel


---[]---
From: adamb@matrix.enst.fr (Adam Beguelin)
X-Organization: Telecom Paris (Ecole Nationale Superieure des Telecoms)

Well my dissertation covers an approach to this.  Phred is a visual
parallel programming language and environment.  You can request a copy
of my dissertation by sending mail to dotty@boulder.colorado.edu.
Currently I'm working on a group of tech reports that you can request
after Dec 1990.

Basically the idea behind Phred is that a programmer specifies a graph
using a visual editor.  This graph specifies the computation.  Graph
structures represent control flow, parallelism, synchronization, and
data flow.  Nodes in the graph are either subroutines or data items.
An environment for creating and analyzing these graphs has been built
and runs under Suns NeWS 1.1.  Some support for simulation exists but
is not complete. Execution of Phred graphs is a current research
project.

	Hope this helps!
	Adam

Email:  adamb@inf.enst.fr or adamb@boulder.colorado.edu
Office: (1) 4581 7881  (From the USA prefix 011-33)
Home:   (1) 4581 7138 
Post:   Adam Beguelin // 212, rue de Tolbiac Ch. 420 // 75013 Paris France


---[]---
From: Eric Golin <golin@cs.uiuc.edu>

As far visual languages for concurrency, you could look at Harel's paper:
"Statecharts: A Visual Formalism for Complex Systems" in Science of Computer
Programming, V8 pp. 231-274 (1987)

You can also look through the proceedings of the IEEE Workshop on Visual
Languages - the library should have proceedings for 1986, 1988, 1989, with
1990 on order (?) - there were articles on concurrency by Pong in 86,
by Stotts in 1988 and by Kahn in 1990 (that I know of - there probably
were some others).

You can also look at the Oct. issue of IEEE Trans. on Software Engineering.


---[]---
From: ROTAN@ccvax.ucd.ie

The entire October 89 issue of IEEE Computer is devoted to visualization. The
four main articles are:
 1. Influence of Visual Technology on the Evolution of Language Environments
 2. A Declarative Approach to Visualizing Concurrent Computations
 3. Visualizing Performance Debugging
 4. Graphical Configuration Programming

Number 2 is the one you want.

Rotan Hanrahan. Parallel Processing Research Group, UCD, Ireland.


---[]---
From: George Theodoropoulos <georget@research2.computer-science.manchester.ac.uk>

 Here are some references concerning visual programming environments for
 multicomputer systems:
-Tools and techniques for transputer applications
  IOS press Amsterdam 1990,pp 232-242
- IEEE software, July 1988,pp 43-50
- IEEE computer, May 1988,pp 39-48
- IEEE computer, 1984 ( The POKER programming environment)
- IEEE computer, October 1989, pp 53-65

Many references, though not quite relevant, can be found in:
IEEE computer, October 1989,pp9-22

Also IEEE computer, August 1985 issue is concerned with visual programming

My MSc research is concerned with the design and implementation of a visual 
editing environment for occam programs.
 
Theodoropoulos George
University of Manchester
Dept. oof Computer Science