References

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

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

Agh91
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.

AK87
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.

Arv89
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.

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

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

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

BCK90
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.

BH90
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.

Ble93
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.

BST89
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.

CD90
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.

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

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

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

CGH90
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.

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

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

FCO90
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.

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

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

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

GG88
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.

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

Hal90
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.

Har89
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.

HCD89
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.

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

HM88
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.

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

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

HP88
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.

HWW89
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.

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

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

KHM89
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.

LH88
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.

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

MH88
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.

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

Nik90
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.

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

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

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

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

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

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

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

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

RS87
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.

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

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

Sch93
Wolfgang Schreiner. Parallel functional programming: An annotated bibliography. Available from author (schreine@risc.uni-linz.ac.at), December 1993.

SH86
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.

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

Shi88
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.

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

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

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

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

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


Guy.Blelloch@cs.cmu.edu, July 1994