Software Components Available for Distribution
Proteus Interpreter
An interpreter implementing the language as documented in the
latest version of the
Proteus Language Reference Manual is available.
Executable versions of the interpreter are available
for several machines:
- Sparc architectures running SunOS
- Macintosh, System 7.1
- DecStations running Ultrix
- HP 700 series running HPUX
- IBM RS/6000 running AIX v3.2
The unix interpreters are in the form of a TAR archive
containing the compressed interpreter.
Use "tar -vxf <file>
" to retrieve the compressed
interpreter from the ftp file, then decompress it with
gunzip
.
The Mac version is a HQX-encoded SIT file.
The interpreter sources
are also available and can be used to build the interpreter for machines
not listed above.
Proteus Sample Programs
There is a collection of example Proteus programs, including
- A logarithmic-time parallel adder (adder.pro).
- A parallel tree-sort (psort.pro).
- A constant-time maximum element locator (maxelt.pro).
- A logarithmic-time connected-components graph algorithm [Shiloach&Vishkin83] (sv.pro).
- And plenty more...
Click here
to see the complete list of examples. Transfer and save
whichever you are interested in trying out.
To run one of these programs, you need to obtain a
Proteus interpreter . Start the interpreter and either place the
filename of the Proteus program as an argument on the command line or type
!include filename
once you've started the interpreter.
Also available are some larger projects
that have been undertaken in Proteus.
Transformation/Compilation Engine
This is undergoing continuous and extensive development and is not
yet ready for release. Watch this space for updates.
Data-parallel Library
This C library
provides a set of nested sequence operations that
is the target of the
data-parallel transformations.
The library is built on top of the flat vector library
CVL developed by the
Scandal project at CMU.
As a result it can be used to run generated data-parallel codes on any of
the machines for which CVL implementations exist.
CVL for the MasPar MP-1 and MP-2
One such CVL implementation is the one developed here for the MasPar
MP-1 and MP-2.
This implementation enables NESL and data-parallel Proteus programs to be
executed on MasPar computers.
The
full distribution includes sources, installation instructions and
documentation. There is also a document
describing the implementation (which is also contained in the full
distribution).
The CVL implementation was developed to agree with
CVL: A C Vector Library (version 2). Blelloch,
Chatterjee, Hardwick, Reid-Miller, Sipelstein, and Zagha, CMU-CS-93-114,
Feb 1993.
Here are references to the abstract
and Postscript
for these Scandal group documents.
____________________________________________
Click here to return to Proteus home page
$ Revised: Sun Feb 13 22:46:34 1994 by prins@cs.unc.edu