[comp.lang.smalltalk] ALLOY: Parallel, higher level, and flexible. V2.0

mitsolid@acf5.NYU.EDU (Thanasis Mitsolides) (06/12/91)

This, announces the availability of the interpreter, manual,
 examples, and thesis for the programming language ALLOY v2.0.
ALLOY now completely unifies its functional and object oriented aspects.
 Also, its supports a much richer library.

ALLOY is high level, parallel, flexible and efficient.
ALLOY combines serial/parallel ev., eager/lazy ev., single/multiple solutions
 and parallel object oriented programming in a remarkably simple framework.

Example programs ready for execution include:
 1) factorial, partition sort, FP 			(highly parallel)
 2) fibonacci sequence, prime numbers 			(eager or lazy)
 3) systolic sort, hamming network			(clear flow of data)
 4) list member, tree leave, list permutation, n queens (multiple solutions)
 5) queue, stack, faa, semaphores, dinning philosophers	(objects)
 6) prolog package, prolog/parlog programming styles 	(flexibility)

Part of ALLOY is explained in:
[MH90]    Thanasis  Mitsolides  and  Malcolm  Harrison.   Generators  and  the
          replicator control  structure in the parallel  environment of ALLOY.
          In ACM  SIGPLAN '90  Conference on  Programming Language  Design and
          Implementation, pages 189--196, White Plains, New York, June 1990.

The abstract of the ALLOY manual is appended at the end of this message.
The sources, manual, example programs, benchmarks, and thesis of ALLOY
are available for anonymous FTP from cs.nyu.edu (128.122.140.24)

I hope you will find ALLOY interesting.
I will be glad to answer your comments!
Thank you,

Thanasis


===============================================================================
				ABSTRACT

       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).
       This article, starts with  a formal definition of the  small ALLOY
     kernel  proceeds with the  definition of  some useful libraries  and
     concludes  with examples  which demonstrate  its expressiveness  and
     clarity.
       Programming language ALLOY is located  on system spunky.cs.nyu.edu
     directory  ~mitsolid/alloy.   This article can  be found in dvi  and
     ascii  form  on subdirectory  doc,  The  examples presented  can  be
     found  in subdirectory progs.   The  interpreter is executable  file
     alloy.   All the above and the sources of the  ALLOY interpreter are
     available   for   anonymous  ftp  on  system  cs.nyu.edu   directory 
     pub/local/alloy.

-------------------------------------------------------------------------------
Internet: mitsolid@cs.nyu.edu	             (mitsolid%cs.nyu.edu@relay.cs.net)
UUCP    : ...!uunet!cmcl2!cs!mitsolid
-------------------------------------------------------------------------------


-- 
-------------------------------------------------------------------------------
Internet: mitsolid@cs.nyu.edu	             (mitsolid%cs.nyu.edu@relay.cs.net)
UUCP    : ...!uunet!cmcl2!cs!mitsolid
-------------------------------------------------------------------------------