category: concurrent, parellel, and simulation languages
-
Description:
|
This is a fairly broad category of languages. Most of the
implementations in this set are not good enough to be used in
production systems. Some are. In addition to those listed
below, see:
|
|---|
-
Language:
|
ABCL/1 (An object-Based Concurrent Language)
|
|---|
-
Package:
|
ABCL/1
|
|---|
-
Version:
|
?
|
|---|
-
Parts:
|
?
|
|---|
-
Author:
|
Akinori Yonezawa, ABCL Group now at Department of Information
Science, the University of Tokyo
|
|---|
-
Location:
|
ftp://camille.is.s.u-tokyo.ac.jp/pub/abcl1/*
|
|---|
-
Description:
|
Asynchronous message passing to objects.
|
|---|
-
Reference:
|
"ABCL: An Object-Oriented Concurrent System", Edited by
Akinori Yonezawa, The MIT Press, 1990, (ISBN 0-262-24029-7)
|
|---|
-
Restriction:
|
no commercial use, must return license agreement
|
|---|
-
Requires:
|
Common Lisp
|
|---|
-
Contact:
|
abcl@is.s.u-tokyo.ac.jp
|
|---|
-
Updated:
|
May 23rd, 1990
|
|---|
-
Language:
|
ABCL ???
|
|---|
-
Package:
|
ABCL/R2
|
|---|
-
Version:
|
?
|
|---|
-
Parts:
|
?
|
|---|
-
Author:
|
masuhara@is.s.u-tokyo.ac.jp, matsu@is.s.u-tokyo.ac.jp,
takuo@is.s.u-tokyo.ac.jp, yonezawa@is.s.u-tokyo.ac.jp
|
|---|
-
Location:
|
ftp://camille.is.s.u-tokyo.ac.jp/pub/abclr2/*
|
|---|
-
Description:
|
ABCL/R2 is an object-oriented concurrent reflective language
based on Hybrid Group Architecture. As a reflective language,
an ABCL/R2 program can dynamically control its own behavior,
such as scheduling policy, from within user-program. An an
object-oriented concurrent language, this system has almost all
functions of ABCL/1.
|
|---|
-
Requires:
|
Common Lisp
|
|---|
-
Updated:
|
January 28th, 1993
|
|---|
-
Language:
|
ALLOY
|
|---|
-
Package:
|
ALLOY
|
|---|
-
Version:
|
2.0?
|
|---|
-
Parts:
|
interpreter, documentation, examples
|
|---|
-
Author:
|
Thanasis Mitsolides <mitsolid@cs.nyu.edu>
|
|---|
-
Location:
|
ftp://cs.nyu.edu/pub/local/alloy/*
|
|---|
-
Description:
|
ALLOY is a higher level parallel programming language
appropriate for programming massively parallel computing
systems. It is based on a combination of ideas from
functional, object oriented and logic programming languages.
The result is a language that can directly support
functional, object oriented and logic programming styles
in a unified and controlled framework. Evaluating modes
support serial or parallel execution, eager or lazy
evaluation, non-determinism or multiple solutions etc.
ALLOY is simple as it only requires 29 primitives in all
(half of which for Object Oriented Programming support).
|
|---|
-
Ports:
|
sparc, ?
|
|---|
-
Updated:
|
June 11th, 1991
|
|---|
-
Language:
|
Cellang (Cellular Automata)
|
|---|
-
Package:
|
Cellular
|
|---|
-
Version:
|
2.0
|
|---|
-
Parts:
|
byte-code compiler, runtime, viewer
|
|---|
-
Author:
|
J Dana Eckart <dana@rucs.faculty.cs.runet.edu>
|
|---|
-
Location:
|
comp.sources.unix, volume 26
|
|---|
-
Description:
|
A system for cellular automata programming.
|
|---|
-
Updated:
|
April 3rd, 1993
|
|---|
-
Language:
|
Simula 67
|
|---|
-
Package:
|
cim
|
|---|
-
Version:
|
1.62
|
|---|
-
Parts:
|
compiler(->C)
|
|---|
-
Author:
|
Sverre Hvammen Johansen <sj@ifi.uio.no>
Stein Krogdahl <steink@ifi.uio.no>
Terje Mjoes.
|
|---|
-
Location:
|
|
|---|
-
Description:
|
A compiler that translates Simula to C, for further
compilation.
|
|---|
-
Conformance:
|
Does not include unspecified virtual procedures.
|
|---|
-
Reference:
|
"Viderefoering og testing av et portabelt Simula-system."
Hovedoppgave til cand.scient.-graden av Terje Mjoes.
Institutt for informatikk, Universitetet i Oslo, April
1989.
"Et portabelt Simula-system bygget paa C." Hovedoppgave til
cand.scient-graden av Sverre Johansen. Institutt for
informatikk, Universitetet i Oslo, Mai 1987.
|
|---|
-
Bugs:
|
Constant must be declared before reference/use.
|
|---|
-
Restriction:
|
See bugs and conformance.
|
|---|
-
Requires:
|
A C compiler.
|
|---|
-
Ports:
|
Numerous.
|
|---|
-
Portability:
|
Any UNIX system. (Uses GNU AutoConf.)
|
|---|
-
Status:
|
Maintained by Sverre Johansen.
|
|---|
-
Help:
|
E-mail: cim@ifi.uio.no
|
|---|
-
Contact:
|
E-mail: cim@ifi.uio.no
|
|---|
-
Updated:
|
March 20th, 1995.
|
|---|
-
Language:
|
Concurrent ML
|
|---|
-
Package:
|
Concurrent ML
|
|---|
-
Version:
|
0.9.8
|
|---|
-
Parts:
|
extension
|
|---|
-
Author:
|
?
|
|---|
-
Location:
|
ftp://ftp.cs.cornell.edu/pub/CML* or get SML/NJ
|
|---|
-
Description:
|
Concurrent ML is a concurrent extension of SML/NJ, supporting
dynamic thread creation, synchronous message passing on
synchronous channels, and first-class synchronous operations.
First-class synchronous operations allow users to tailor their
synchronization abstractions for their application. CML also
supports both stream I/O and low-level I/O in an integrated
fashion.
|
|---|
-
Bugs:
|
sml-bugs@research.att.com
|
|---|
-
Requires:
|
SML/NJ 0.75 (or later)
|
|---|
-
Updated:
|
Febuary 18th, 1993
|
|---|
-
Language:
|
OCCAM 2 (A parallel, concurrent, distributed language)
|
|---|
-
Package:
|
D7202-oc / TDS
|
|---|
-
Version:
|
?
|
|---|
-
Parts:
|
compiler & full toolset system
|
|---|
-
Author:
|
INMOS Ltd.
|
|---|
-
Location:
|
ftp://unix.hensa.ac.uk/pub/parallel/occam/compilers/inmos
http://www.hensa.ac.uk/parallel/occam/compilers/inmos/index.html
|
|---|
-
Description:
|
An old version of the INMOS OCCAM compiler & toolset, made
freely avaiable by INMOS Ltd. OCCAM is a language for
designed to express concurrent algorithms and their
implementation on a network of processing components.
|
|---|
-
Conformance:
|
The original implementation of OCCAM 2
|
|---|
-
Reference:
|
"OCCAM 2 reference manual", INMOS ltd, Prentice-Hall
International, ISBN 0-13-629312-3
|
|---|
-
Features:
|
produces object code for the INMOS transputer (but see
KROC entry)
|
|---|
-
Restriction:
|
Research purposes only. NO support will be provided by
INMOS Ltd.
|
|---|
-
Requires:
|
C & occam compiler (Sun4, PC, & Transputer binaries available)
|
|---|
-
Ports:
|
Sun3, Sun4, PC, INMOS transputer. (Most UNIXes?)
|
|---|
-
Portability:
|
produces object code for the INMOS transputer (but see KROC
entry)
|
|---|
-
Status:
|
Not developed, UNSUPPORTED.
|
|---|
-
Discussion:
|
comp.sys.transputer
|
|---|
-
Contact:
|
Dave Beckett <djb1@ukc.ac.uk>
|
|---|
-
Updated:
|
1-Mar-94
|
|---|
-
Language:
|
EuLisp
|
|---|
-
Package:
|
Feel (Free and Eventually Eulisp)
|
|---|
-
Version:
|
0.75
|
|---|
-
Parts:
|
interpreter, documentation
|
|---|
-
Author:
|
Pete Broadbery <pab@maths.bath.ac.uk>
|
|---|
-
Location:
|
ftp://ftp.bath.ac.uk/pub/eulisp
|
|---|
-
Description:
|
- integrated object system
- a module system
- parallelism
- interfaces to PVM library, tcp/ip sockets, futures,
Linda, and CSP.
|
|---|
-
Ports:
|
most unix
|
|---|
-
Portability:
|
high, but can use shared memory and threads if available
|
|---|
-
Updated:
|
September 14th, 1992
|
|---|
-
Language:
|
UNITY
|
|---|
-
Package:
|
HOL-UNITY
|
|---|
-
Version:
|
2.1
|
|---|
-
Parts:
|
verification tool
|
|---|
-
Author:
|
?
|
|---|
-
Location:
|
?
|
|---|
-
Description:
|
?
|
|---|
-
Contact:
|
Flemming Andersen <fa@tfl.dk> ?
|
|---|
-
Updated:
|
?
|
|---|
-
Language:
|
Hermes
|
|---|
-
Package:
|
IBM Watson prototype Hermes system
|
|---|
-
Version:
|
0.8alpha patchlevel 01
|
|---|
-
Parts:
|
bytecode compiler, compiler(bytecode->C), runtime
|
|---|
-
Author:
|
Andy Lowry <lowry@watson.ibm.com>
|
|---|
-
Location:
|
ftp://software.watson.ibm.com/pub/hermes/README
|
|---|
-
Description:
|
Hermes is a very-high-level integrated language and
system for implementation of large systems and
distributed applications, as well as for
general-purpose programming. It is an imperative,
strongly typed, process-oriented language. Hermes
hides distribution and heterogeneity from the
programmer. The programmer sees a single abstract
machine containing processes that communicate using
calls or sends. The compiler, not the programmer,
deals with the complexity of data structure layout,
local and remote communication, and interaction with
the operating system. As a result, Hermes programs are
portable and easy to write. Because the programming
paradigm is simple and high level, there are many
opportunities for optimization which are not present in
languages which give the programmer more direct control
over the machine.
|
|---|
-
Reference:
|
Strom, Bacon, Goldberg, Lowry, Yellin, Yemini. Hermes: A
Language for Distributed Computing. Prentice-Hall, Englewood
Cliffs, NJ. 1991. ISBN: O-13-389537-8.
|
|---|
-
Ports:
|
RS6000 Sun-4 NeXT IBM-RT/bsd4.3 (Sun-3 and Convex soon)
|
|---|
-
Discussion:
|
comp.lang.hermes
|
|---|
-
Updated:
|
March 22nd, 1992
|
|---|
-
Language:
|
ICC++ (Illinois Concert C++) and CA (Concurrent Aggregates)
|
|---|
-
Package:
|
Illinois Concert System
|
|---|
-
Version:
|
3.0
|
|---|
-
Parts:
|
compiler(->C++), interpreter, symbolic debugger, parallel
runtime simulator, parallel implementation on TMC CM5,
Cray T3D
|
|---|
-
Author:
|
Various, concert@red-herring.cs.uiuc.edu
|
|---|
-
Location:
|
http://www-csag.cs.uiuc.edu/projects/concert.html
|
|---|
-
Description:
|
The Concert System incorporates global analysis for
parallel object-oriented languages, including
aggressive concrete type inference. In addition, it
include an extremely lightweight communication and
threading library (compiler-supported). The
implementation supports both a parallel C++ and
a simple parallel object-oriented language called
Concurrent aggregates.
|
|---|
-
Conformance:
|
ICC++ and CA documentation available from the web site.
|
|---|
-
Reference:
|
Andrew Chien, et. al. The Concert System -- Compiler and
Runtime Support for Efficient Fine-Grained Concurrent
Object-Oriented Programs, Department of Computer Science,
University of Illinois, Urbana, Illinois, Technical
Report UIUCDCS-R-93-1815, June 1993.
(Others are available also)
|
|---|
-
Bugs:
|
concert@red-herring.cs.uiuc.edu
|
|---|
-
Restriction:
|
redistribution is restricted
|
|---|
-
Announcements:
|
where new releases are announced
|
|---|
-
Contact:
|
Andrew Chien achien@cs.uiuc.edu
|
|---|
-
Updated:
|
May 7th, 1995 Version 3.0
|
|---|
-
Language:
|
OCCAM 2 (A parallel, concurrent, distributed language)
|
|---|
-
Package:
|
KROC (Kent Retargetable Occam Compiler)
|
|---|
-
Version:
|
0.1 Beta
|
|---|
-
Parts:
|
compiler, run-time kernel, documentation
|
|---|
-
Author:
|
David Wood, Professor Peter Welch
|
|---|
-
Location:
|
ftp://unix.hensa.ac.uk/pub/parallel/occam/projects/occam-for-all/kroc
http://www.hensa.ac.uk/parallel/occam/projects/occam-for-all/kroc/
|
|---|
-
Description:
|
KROC is a portable OCCAM compiler system that enables OCCAM to
run on non-transputer platforms (initially SunOS/SPARC(TM)
workstations). KROC works by translating code produced by an
INMOS OCCAM Toolset compiler into the native assembler for the
target architecture and linking in a small (< 2K bytes) kernel
that provides the process scheduling and message-passing
functionality of the transputer micro-code. Therefore, you
will need an OCCAM Toolset compiler (see requires:).
|
|---|
-
Features:
|
- -initialy available as Sun4 (SunOS) binary.
- A source release will follow.
|
|---|
-
Reference:
|
"OCCAM 2 reference manual", INMOS ltd, Prentice-Hall
International, ISBN 0-13-629312-3
"Transputer Instruction Set - A Compiler Writers Guide", INMOS
Ltd, Prentice-Hall, ISBN 0-13-929100-8
|
|---|
-
Restriction:
|
?
|
|---|
-
Requires:
|
INMOS OCCAM compiler D7202 from:
ftp://unix.hensa.ac.uk/pub/parallel/occam/compilers/inmos/oc
|
|---|
-
Ports:
|
Sun4 (DEC Alpha and Motorola PowerPC to follow)
|
|---|
-
Portability:
|
Sparc processor only at present
|
|---|
-
Status:
|
actively developed, supported
|
|---|
-
Discussion:
|
comp.sys.transputer, <ofa-com-request@ukc.ac.uk>
|
|---|
-
Contact:
|
Occam For All Team <ofa-bugs@ukc.ac.uk>
|
|---|
-
Updated:
|
4-May-1995
|
|---|
-
Language:
|
LOOPN
|
|---|
-
Package:
|
LOOPN
|
|---|
-
Version:
|
?
|
|---|
-
Parts:
|
compiler?, simulator
|
|---|
-
Author:
|
?
|
|---|
-
Location:
|
ftp://ftp.utas.edu.au/departments/computer_sci*/loopn.tar.Z
|
|---|
-
Description:
|
I wish to announce the availability of a compiler, simulator
and associated source control for an object-oriented petri net
language called LOOPN. In LOOPN, a petri net is an extension
of coloured timed petri nets. The extension means firstly that
token types are classes. In other words, they consist of both
data fields and functions, they can be declared by inheriting
from other token types, and they can be used polymorphically.
The object-oriented extensions also mean that module or subnet
types are classes. LOOPN has been developed over a period of
about 5 years at the University of Tasmania, where it has been
used in teaching computer simulation and the modelling of
network protocols. A petri net is a directed, bipartite graph;
nodes are either places (represented by circles) or transitions
(represented by rectangles). A net is marked by placing tokens
on places. When all the places pointing to a transition (the
input places) have a token, the net may be fired by removing a
token from each input place and adding a token to each place
pointed to by the transition (the output places). Petri nets
are used to model concurrent systems, particularly in the
network protocol area.
|
|---|
-
Contact:
|
Charles Lakos <charles@probitas.cs.utas.edu.au>
|
|---|
-
Updated:
|
December 20th, 1992
|
|---|
-
Language:
|
Maisie
|
|---|
-
Package:
|
Maisie
|
|---|
-
Version:
|
2.1
|
|---|
-
Parts:
|
?, user manual, examples
|
|---|
-
Author:
|
Wen-Toh Liao <wentoh@may.CS.UCLA.EDU>
|
|---|
-
Location:
|
ftp://cs.ucla.edu/pub/maisie.2.1.1.3.tar.Z
|
|---|
-
Description:
|
C-based parallel programming language that uses asynchronous
typed-message passing and supports light-weight processes.
The language is C with enhancements to allow processes to be
defined, created, and destroyed, to send and receive messages,
and manipulate the system clock.
|
|---|
-
Ports:
|
PVM/3.1, Cosmic Environment, and SUN Sockets.
|
|---|
-
Updated:
|
June 14th, 1993
|
|---|
-
Language:
|
MeldC (MELD, C)
|
|---|
-
Package:
|
MeldC
|
|---|
-
Version:
|
2.0
|
|---|
-
Parts:
|
microkernel, compiler, debugger, manual, examples
|
|---|
-
Author:
|
MELD Project, Programming Systems Laboratory at
Columbia University
|
|---|
-
Location:
|
obtain license from <MeldC@cs.columbia.edu>
|
|---|
-
Description:
|
MeldC 2.0: A Reflective Object-Oriented Coordination
Programming Language MELDC is a C-based, concurrent,
object-oriented language built on a reflective architecture.
The core of the architecture is a micro-kernel (the MELDC
kernel), which encapsulates a minimum set of entities that
cannot be modeled as objects. All components outside of the
kernel are implemented as objects in MELDC itself and are
modularized in the MELDC libraries. MELDC is reflective in
three dimensions: structural, computational and architectural.
The structural reflection indicates that classes and
meta-classes are objects, which are written in MELDC. The
computational reflection means that object behaviors can be
computed and extended at runtime. The architectural reflection
indicates that new features/properties (e.g., persistency and
remoteness) can be constructed in MELDC.
|
|---|
-
Restriction:
|
must sign license, cannot use for commercial purposes
|
|---|
-
Ports:
|
Sun4/SunOS4.1 Mips/Ultrix4.2
|
|---|
-
Contact:
|
<MeldC@cs.columbia.edu>
|
|---|
-
Updated:
|
December 15th, 1992
|
|---|
-
Language:
|
Tcl
|
|---|
-
Package:
|
MTtcl - Multi-threaded Tcl
|
|---|
-
Version:
|
0.9
|
|---|
-
Parts:
|
interpreter, library
|
|---|
-
Location:
|
ftp://ftp.csua.berkeley.edu/pub/mttcl/MTtcl0.9.tar.gz
|
|---|
-
Description:
|
The MTtcl package gives Tcl/Tk programmers access to the
multi-threading features of Solaris 2. The package comes in
two parts; a modified version of Tcl 7.4, and a Tcl threads
extension.
Modifications were necessary to enable Tcl to work "safely" in
the presence of multiple threads. The Tcl interpretter uses a
number of static and global variables to execute scripts. If
two threads are using the same global, the behavior of the
script may be unpredictable. This "safe" Tcl is called
MT-Sturdy Tcl.
The threads extension brings multi-thread programming into the
Tcl environment. Multiple scripts can be interpretted
simultaneously with communication and synchronization between
scripts. There is special support for using threads in Tk
scripts. Documentation for the threads commands are in the
form of man pages.
|
|---|
-
Requires:
|
Sparc, Solaris 2.3, Sparcworks 3.0 C compiler, Tcl 7.4, Tk 4.0
|
|---|
-
Ports:
|
Sparc Solaris 2.3
|
|---|
-
Updated:
|
November 2nd, 1994
|
|---|
-
Language:
|
Parallaxis
|
|---|
-
Package:
|
parallaxis
|
|---|
-
Version:
|
Parallaxis-III
|
|---|
-
Parts:
|
?,debugger, viz tools, simulator, x-based profiler
|
|---|
-
Author:
|
Thomas Braunl <braunl@informatik.uni-stuttgart.de>
|
|---|
-
Location:
|
ftp://ftp.informatik.uni-stuttgart.de/pub/p3
http://www.informatik.uni-stuttgart.de/ipvr/bv/p3
|
|---|
-
Description:
|
Parallaxis is a procedural programming language based
on Modula-2, but extended for data parallel (SIMD) programming.
The main approach for machine independent parallel programming
is to include a description of the virtual parallel machine
with each parallel algorithm.
|
|---|
-
Ports:
|
MP-1, CM-2, Sun-3, Sun-4, DECstation, HP 700, RS/6000
|
|---|
-
Contact:
|
? Thomas Braunl <braunl@informatik.uni-stuttgart.de> ?
|
|---|
-
Updated:
|
October 23rd, 1992
|
|---|
-
Language:
|
PCN
|
|---|
-
Package:
|
PCN
|
|---|
-
Version:
|
2.0
|
|---|
-
Parts:
|
compiler?, runtime, linker, libraries, tools, debugger,
profiler, tracer
|
|---|
-
Author:
|
Ian Foster <foster@mcs.anl.gov>, Steve Tuecke
<tuecke@mcs.anl.gov>, and others
|
|---|
-
Location:
|
ftp://info.mcs.anl.gov/pub/pcn/pcn_v2.0.tar.Z
|
|---|
-
Description:
|
PCN is a parallel programming system designed to improve
the productivity of scientists and engineers using parallel
computers. It provides a simple language for specifying
concurrent algorithms, interfaces to Fortran and C, a
portable toolkit that allows applications to be developed
on a workstation or small parallel computer and run
unchanged on supercomputers, and integrated debugging and
performance analysis tools. PCN was developed at Argonne
National Laboratory and the California Institute of
Technology. It has been used to develop a wide variety of
applications, in areas such as climate modeling, fluid
dynamics, computational biology, chemistry, and circuit
simulation.
|
|---|
-
Ports:
|
(workstation nets): Sun4, NeXT, RS/6000, SGI
(multicomputers): iPSC/860, Touchstone DELTA
(shared memory multiprocessors): Symmetry/Dynix
|
|---|
-
Contact:
|
<pcn@mcs.anl.gov>
|
|---|
-
Updated:
|
Febuary 12th, 1993
|
|---|
-
Language:
|
pm2
|
|---|
-
Package:
|
PRAM emulator and parallel modula-2 compiler ??
|
|---|
-
Version:
|
?
|
|---|
-
Parts:
|
compiler, emulator
|
|---|
-
Author:
|
?
|
|---|
-
Location:
|
ftp://cs.joensuu.fi/pub/pram/*
|
|---|
-
Description:
|
A software emulator for parallel random access machine (PRAM)
and a parallel modula-2 compiler for the emulator. A PRAM
consists of P processors, an unbounded shared memory, and a
common clock. Each processor is a random access machine (RAM)
consisting of R registers, a program counter, and a read-only
signature register. Each RAM has an identical program, but the
RAMs can branch to different parts of the program. The RAMs
execute the program synchronously one instruction in one clock
cycle.
pm2 programming language is Modula-2/Pascal mixture having
extensions for parallel execution in a PRAM. Parallelism is
expressed by pardo-loop- structure. Additional features include
privat/shared variables, two synchronization strategies, load
balancing and parallel dynamic memory allocation.
|
|---|
-
Contact:
|
Simo Juvaste <sjuva@cs.joensuu.fi>
|
|---|
-
Updated:
|
Febuary 17th, 1993
|
|---|
-
Language:
|
OCCAM 2 (A parallel, concurrent, distributed language)
|
|---|
-
Package:
|
SPOC (Southampton Portable Occam Compiler)
|
|---|
-
Version:
|
1.1
|
|---|
-
Parts:
|
compiler(->C), run-time system, documentation, tools, examples
|
|---|
-
Author:
|
Denis Nicole <dan@ecs.soton.ac.uk>,
Sean Wykes <smw@ecs.soton.ac.uk>,
Mark Debbage <md@pact.srf.ac.uk>,
Mark Hill <mbh@pact.srf.ac.uk>
|
|---|
-
Location:
|
ftp://ftp.ecs.soton.ac.uk/pub/occam/spoc1.1
ftp://unix.hensa.ac.uk/pub/parallel/occam/compilers/spoc
http://www.hensa.ac.uk/parallel/occam/compilers/spoc/index.html
|
|---|
-
Description:
|
supports the OCCAM 2 programming language.
|
|---|
-
Conformance:
|
Full implementation of OCCAM 2
|
|---|
-
Reference:
|
"OCCAM 2 reference manual", INMOS ltd, Prentice-Hall
International, ISBN 0-13-629312-3
|
|---|
-
Features:
|
The system generates ANSI-C code, implementing efficient
portable concurrency running on a single target processor.
Supports cross-linking with NAG Fortran-90 compiler.
|
|---|
-
Restriction:
|
GPL'ed
|
|---|
-
Requires:
|
C compiler, gmd compiler tools (available with compiler
sources) (Sun4 binaries available)
|
|---|
-
Ports:
|
Sun3, Sun4
|
|---|
-
Portability:
|
? Should work on most UNIXes
|
|---|
-
Status:
|
actively developed, supported
|
|---|
-
Discussion:
|
comp.sys.transputer
|
|---|
-
Contact:
|
Dr Denis A Nicole <dan@ecs.soton.ac.uk>
|
|---|
-
Updated:
|
1-March-1994
|
|---|
-
Language:
|
SR (Synchronizing Resources)
|
|---|
-
Package:
|
sr
|
|---|
-
Version:
|
2.0
|
|---|
-
Parts:
|
?, documentation, tests
|
|---|
-
Author:
|
?
|
|---|
-
Location:
|
ftp://cs.arizona.edu/sr/sr.tar.Z
|
|---|
-
Description:
|
SR is a language for writing concurrent programs.
The main language constructs are resources and
operations. Resources encapsulate processes and
variables they share; operations provide the primary
mechanism for process interaction. SR provides a novel
integration of the mechanisms for invoking and
servicing operations. Consequently, all of local and
remote procedure call, rendezvous, message passing,
dynamic process creation, multicast, and semaphores are
supported.
|
|---|
-
Reference:
|
"The SR Programming Language: Concurrency in Practice",
by Gregory R. Andrews and Ronald A. Olsson, Benjamin/Cummings
Publishing Company, 1993, ISBN 0-8053-0088-0
|
|---|
-
Ports:
|
Sun-4, Sun-3, Decstation, SGI Iris, HP PA, HP 9000/300,
NeXT, Sequent Symmetry, DG AViiON, RS/6000, Multimax,
Apollo, and others.
|
|---|
-
Discussion:
|
info-sr-request@cs.arizona.edu
|
|---|
-
Contact:
|
sr-project@cs.arizona.edu
|
|---|
-
Updated:
|
September 1st, 1992
|
|---|
-
Language:
|
Concurrent Clean
|
|---|
-
Package:
|
The Concurrent Clean System
|
|---|
-
Version:
|
1.3.1
|
|---|
-
Parts:
|
development environment, documentation, compiler(byte-code),
compiler(native), interpreter(byte-code), examples
|
|---|
-
Author:
|
Research Group on Functional Languages,
Research Institute for Declarative Systems,
University of Nijmegen
|
|---|
-
Location:
|
http://www.cs.kun.nl/~clean/
http://www.stw.nl/projecten/N/nif3059.html
|
|---|
-
Description:
|
The Concurrent Clean system is a programming environment for
the lazy functional language Concurrent Clean, developed at the
University of Nijmegen, The Netherlands. The system is one of
the fastest implementations of functional languages available
at the moment. Its I/O libraries make it possible to do modern,
yet purely functional I/O (including windows, menus, dialogs
etc.). Concurrent Clean is now a commercial product but it is
still free for non-commercial use.
- lazy and purely functional
- partial strict data types
- strongly typed - based on Milner/Mycroft scheme
- existential types
- uniqueness types
- type classes and type constructor classes
- record types
- module structure
- modern I/O
- programmer-infulenced evaluation order by annotations
- parallel and distributed evaluation
|
|---|
-
Ports:
|
Macintosh, PowerMac (native), Sun-4, Linux, OS2
|
|---|
-
Contact:
|
clean@cs.kun.nl
|
|---|
-
Updated:
|
January 3rd, 1999
|
|---|
-
Language:
|
uC++
|
|---|
-
Package:
|
uC++
|
|---|
-
Version:
|
4.6
|
|---|
-
Parts:
|
translator (uC++ to C++), concurrency library, documentation,
examples
|
|---|
-
Author:
|
Peter A. Buhr <pabuhr@uwaterloo.ca>
|
|---|
-
Location:
|
ftp://plg.uwaterloo.ca/pub/uSystem/u++-4.4.tar.gz
|
|---|
-
Description:
|
An extended C++ with light-weight concurrency for Unix-like
systems. uC++ is pronounced "micro-C++".
|
|---|
-
Reference:
|
Software--Practice and Experience, 22(2):137-172, February
1992.
|
|---|
-
Features:
|
- true multiprocessor support on SUN, DEC, SGI, Sequent
- coroutine, monitor and task extensions to C++
- non-blocking I/O library
- mechanism to group tasks and virtual processors
- non-deterministic time slicing
|
|---|
-
Bugs:
|
LINUX non-blocking sockets fail
|
|---|
-
Requires:
|
dmake 4.0+ (ftp://plg.uwaterloo.ca/pub/dmake/dmake40.tar.gz )
GNU C++ 2.6.3+
|
|---|
-
Ports:
|
Sequent (BSD), SUN Solaris (SPARC) & SunOS (SPARC, M68K), DEC
OSF 3.2+ (Alpha), SGI IRIX 5.3+ (MIPS), IBM AIX 3.2+ (RS/6000),
HP HP-UX 9.03+ (PA), LINUX 1.2.13+/1.3.20+ (i386+)
|
|---|
-
Portability:
|
Needs "setitimer" and "sigcontext" from Unix-like systems.
|
|---|
-
Updated:
|
September 14th, 1995
|
|---|
|
|