Gul A. Agha. Actors: A Model of Concurrent Computation in Distributed Systems. The MIT Press, Cambridge, MA, 1986.

Gul Agha. Concurrent Object-Oriented Programming. Communications of the ACM, 33(9):125-141, September 1990.

Gul Agha. The Structure and Semantics of Actor Language. In Proceedings of the School/Workshop on Foundations of Object Oriented Languages, Lecture Notes in Computer Science. Springer-Verlag, 1991.

Randy Allen and Ken Kennedy. Automatic Translation of FORTRAN Programs to Vector Form. ACM Transactions on Programming Languages and Systems, 9(4):491-542, October 1987.

Arvind and Rishiyur S. Nikhil. A Dataflow Approach to General-purpose Parallel Computing. Computation Structures Group Memo 302, Laboratory for Computer Science, Massachusetts Institute of Technology, July 1989.

W. C. Athas and C. L. Seitz. Multicomputers: Message-passing Concurrent Computers. Computer, 21(8):9-24, August 1988.

Henri E. Bal. A comparitive study of five parallel programming languages. Future Generation Computer Systems, 8:121-135, July 1992.

Utpal Banerjee. Dependence Analysis for Supercomputing. Kluwer Academic Publishers, Norwell, MA, 1988.

R. Bagrodia, K. M. Chandy, and E. Kwan. Uc: a language for the Connection Machine. In Proceedings of Supercomputing '90, pages 525-534. IEEE Computer Society Press, November 1990.

James M. Boyle and Terence J. Harmer. A Practical Functional Program for the CRAY X-MP. PREPRINT MCS-P159-0690, Mathematics and Computer Science Division, Argonne National Laboratory, July 1990.

BHJ tex2html_wrap_inline348 87
A. Black, N. Hutchinson, E. Jul, H. Levy, and L. Carter. Distribution and Abstract Data Types in Emerald. IEEE Transactions on Software Engineering, 13(1):65-76, January 1987.

Guy E. Blelloch. NESL: A nested data-parallel language (version 2.6). Technical Report CMU-CS-93-129, School of Computer Science, Carnegie Mellon University, April 1993.

Henri E. Bal, Jennifer G. Steiner, and Andrew S. Tanenbaum. Programming Languages for Distributed Computing Systems. ACM Computing Surveys, 21(3):261-322, September 1989.

Andrew A. Chien and William J. Dally. Experience with Concurrent Aggregates (CA): Implementation and Programming. In Proceedings of the Fifth Distributed Memory Computers Conference, Charleston, South Carolina, April 8-12 1990. SIAM.

K. L. Clarke and S. Gregory. PARLOG: Parallel Programming in Logic. ACM Transactions on Programming Languages and Systems, 8(1):1-49, January 1985.

Nicholas Carriero and David Gelernter. How to Write Parallel Programs: A Guide to the Perplexed. ACM Computing Surveys, 21(3):323-357, September 1989.

Nicholas Carriero and David Gelernter. Linda in Context. Communications of the ACM, 32(4):444-458, April 1989.

Rohit Chandra, Anoop Gupta, and John Hennessy. COOL: A Language for Parallel Programming. In David Padua, David Gelernter, and Alexandru Nicolau, editors, Languages and Compilers for Parallel Computing, Research Monographs in Parallel and Distributed Computing, pages ??-?? The MIT Press, 1990.

K. Mani Chandy and Jayadev Misra. Parallel Program Design: A Foundation. Addison-Wesley, Reading, MA, 1988.

K. Mani Chandy and Stephen Taylor. A Primer for Program Composition Notation. Available from Caltech, June 1990.

John T. Feo, David C. Cann, and Rodney R. Oldehoeft. A Report on the Sisal Language Project. Journal of Parallel and Distributed Computing, 10(4):349-366, December 1990.

Ian Foster, Carl Kesselman, and Stephen Taylor. Concurrency: Simple Concepts and Powerful Tools. The Computer Journal, 33(6):501-507, December 1990.

Ian Foster and Stephen Taylor. Strand: New Concepts in Parallel Programming. Prentice Hall, Englewood Cliffs, New Jersey, 1990.

David Gelernter and Nicholas Carreiro. How To Write Parallel Programs: A First Course. The MIT Press, Cambridge, Massachusetts, 1990.

Ron Goldman and Richard P. Gabriel. Qlisp: Experience and New Directions. In Proceedings of the ACM/SIGPLAN PPEALS 1988, New Haven, CT, pages 111-123, 1988.

R. H. Halstead. MultiLisp: A Language for Concurrent Symbolic Computation. ACM Transactions on Programming Languages and Systems, 7(4):501-538, October 1985.

R. H. Halstead. New Ideas in Parallel Lisp: Language Design, Implementation, and Programming Tools. In G. Goos and J. Hartmanis, editors, Parallel Lisp: Languages and Systems, Proceedings of the U.S./Japan Workshop on Parallel Lisp, volume 441, pages 2-57. Springer-Verlag, 1990.

Williams Ludwell Harrison III. The Interprocedural Analysis and Automatic Parallelization of Scheme Programs. Lisp and Symbolic Computation: An International Journal, 2(3/4), October 1989.

Waldemar Horwat, Andrew Chien, and William J. Dally. Experience with CST: Programming and Implementation. In Proceedings of the ACM SIGPLAN 89 Conference on Programming Language Design and Implementation, 1989.

High Performance Fortran Forum. High Performance Fortran Language Specification, May 1993.

Paul Hudak and Eric Mohr. Graphinators and the Duality of SIMD and MIMD. In ACM Conference on Lisp and Functional Programming, pages 224-234, July 1988.

C. A. R. Hoare. Communicating Sequential Processes. Communications of the ACM, 21(8):666-677, August 1978.

A. Nico Habermann and Dewayne E. Perry. Ada for Experienced Programmers, chapter 11. Addison-Welsey, Reading, MA, 1983.

Luddy Harrison and David A. Padua. PARCEL: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp. In Proceedings of the 1988 International Conference on Supercomputing, St. Malo, France, pages 527-538, 1988.

Leonard G. C. Hamey, Jon A. Webb, and I-Chen Wu. An Architecture Independent Programming Language for Low-Level Vision. Computer Vision, Graphics, and Image Processing, 48:246-264, 1989.

Kenneth E. Iverson. A Programming Language. Wiley, New York, 1962.

Alan H. Karp and Robert G. Babb II. A Comparison of 12 Fortran Dialects. IEEE Software, 5(5):52-67, September 1988.

David A. Krantz, Robert H. Halstead, Jr., and Eric Mohr. Mul-T: A High-Performance Parallel Lisp. In Proceedings of the SIGPLAN'89 Conference on Programming Language Design and Implementation, pages 81-90, 1989.

James R. Larus and Paul N. Hilfinger. Restructuring Lisp Programs for Concurrent Execution. In Proceedings of the ACM/SIGPLAN PPEALS 1988, New Haven, CT, pages 100-110, 1988.

D. May. Occam. ACM SIGPLAN Notices, 18(4):69-79, April 1983.

Z. G. Mou and P. Hudak. An algebraic model of divide-and-conquer and its parallelism. Journal of Supercomputing, 2(3):257-278, November 1988.

MNP tex2html_wrap_inline350 90
Peter H. Mills, Lars S. Nyland, Jan F. Prins, John H. Reif, and Robert A. Wagner. Prototyping parallel and distributed programs in Proteus. Technical Report UNC-CH TR90-041, Computer Science Department, University of North Carolina, 1990.

Michael Metcalf and John Reid. Fortran 90 Explained. Oxford University Press, New York, 1992.

Rishiyur S. Nikhil. ID Version 90.0 Reference Manual. Computation Structures Group Memo 284-1, Laboratory for Computer Science, Massachusetts Institute of Technology, July 1990.

Cherri M. Pancake and Donna Bergmark. Do Parallel Languages Respond to the Needs of Scientific Programmers? Computer, 23(12):13-23, December 1990.

R. H. Perrott. Parallel language developments in Europe: an overview. Concurrency: Practice and Experience, 4(8):589-617, December 1992.

Simon L. Peyton Jones. The Implementation of Functional Programming Languages. Prentice-Hall, London, UK, 1987.

S. L. Peyton Jones. Parallel Implementations of Functional Programming Languages. The Computer Journal, 32(2):175-186, 1989.

David Padua, David Kuck, and Duncan Lawrie. High-Speed Multiprocessors and Compilation Techniques. IEEE Transactions on Computers, C-29(9):763-776, September 1980.

Constantine D. Polychronopoulos. Parallel Programming and Compilers. Kluwer Academic Publishers, Norwell, MA, 1988.

D. A. Padua and M. Wolfe. Advanced Compiler Optimizations for Supercomputers. Communications of the ACM, 29(12):1184-1201, December 1986.

Michael J. Quinn and Philip J. Hatcher. Data-Parallel Programming on Multicomputers. IEEE Software, 7(5):69-76, September 1990.

J. R. Rose and G. L. Steele Jr. C*: An Extended C Language for Data Parallel Programming. In Proceedings Second International Conference on Supercomputing, Vol. 2, pages 2-16, San Francisco, CA, May 1987.

Gary W. Sabot. The Paralation Model: Architecture-Independent Parallel Programming. The MIT Press, Cambridge, Massachusetts, 1988.

Jay Sipelstein and Guy E. Blelloch. Collection-oriented languages. Proceedings of the IEEE, 79(4):504-523, April 1991.

Wolfgang Schreiner. Parallel functional programming: An annotated bibliography. Available from author (, December 1993.

Guy L. Steele Jr. and W. Daniel Hillis. Connection Machine Lisp: Fine-Grained Parallel Symbolic Processing. In Proceedings of the 1986 ACM Conference on Lisp and Functional Programming, pages 279-297, 1986.

Ehud Shapiro. The Family of Concurrent Logic Programming Languages. ACM Computing Surveys, 21(3):412-510, September 1989. Except Section 3.

Olin Shivers. Control Flow Analysis in Scheme. In Proceedings of the SIGPLAN 1988 Conference on Programming Language Design and Implementation, pages 164-174, June 1988.

A. S. Tannenbaum, M. F. Kaashoek, and H. E. Bal. Parallel programming using shared objects and broadcasting. Computer, 25(8):10-19, 1992.

David A. Turner. A New Implementation Technique for Applicative Languages. Software--Practice and Experience, 9:31-49, 1979.

Barbara B. Wyatt, Krishna Kavi, and Steve Hufnagel. Parallellism in object-oriented languages: A survey. IEEE Software, 9(6):56-66, November 1992.

Michael Wolfe. Vector Optimization vs Vectorization. Journal of Parallel and Distributed Computing, 5:551-567, 1988.

Michael Wolfe. Optimizing Supercompilers for Supercomputers. The MIT Press, Cambridge, MA, 1989., July 1994