HOPSA — a High-level Programming Language for Parallel Computations

The use of massive parallel computer architectures for the solution of computation intensive tasks requires specific programming concepts and thus makes programming more difficult. This is because the parallel execution and the particular properties of the chosen machine architecture must be taken into consideration. An abstract programming language more closely reflecting the specification notation is therefore desirable. Programs written in this language should allow a translation into efficient code for massive parallel computers. In that connection, one may ask: which aspects of parallel programming should be treated explicitly in the source code, and which aspects (like load balancing, parallelization and process administration) should be generated by a translator with certain analyzing capabilities. Our long term goal is the implementation of such a language based, for example, on the operating system MMK, Multitasking Multiprocessing Kernel, which has been developed at the Technische Universitat Munchen.

[1]  I. G. BONNER CLAPPISON Editor , 1960, The Electric Power Engineering Handbook - Five Volume Set.

[2]  K. Mani Chandy Parallel program design , 1989 .

[3]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[4]  C. A. R. Hoare,et al.  Notes on Communicating Sequential Systems , 1986 .

[5]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[6]  Bertrand Meyer,et al.  Systematic concurrent object-oriented programming , 1993, CACM.

[7]  Dieter Hogrefe,et al.  Estelle, LOTOS und SDL , 1989 .

[8]  Brian W. Kernighan,et al.  The C Programming Language , 1978 .

[9]  Thomas Johnsson,et al.  The Chalmers Lazy-ML Compiler , 1989, Computer/law journal.

[10]  Robert M. Keller,et al.  Denotational Models for Parallel Programs with Indeterminate Operators , 1977, Formal Description of Programming Concepts.

[11]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[12]  Manfred Broy,et al.  Nondeterministic Data Flow Programs: How to Avoid the Merge Anomaly , 1988, Sci. Comput. Program..

[13]  M. Broy Compositional Reenement of Interactive Systems , 1995 .

[14]  Steven Tuecke,et al.  Parallel Programming with PCN. Revision 1 , 1991 .

[15]  Christian Lengauer,et al.  A Methodology for Programming with Concurrency: An Informal Presentation , 1982, Sci. Comput. Program..

[16]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[17]  Frank Dederichs,et al.  Assumption/Commitment Rules for Networks of Asynchronously Communicating Agents , 1993 .

[18]  Eric C. R. Hehner,et al.  A methodolgy for programming with concurrency , 1981, CONPAR.

[19]  WadlerPhilip,et al.  Report on the programming language Haskell , 1992 .

[20]  Monica S. Lam,et al.  Heterogeneous parallel programming in Jade , 1992, Proceedings Supercomputing '92.

[21]  Manfred Broy (Inter-)Action Refinement: The Easy Way , 1992, NATO ASI PDC.

[22]  Simon L. Peyton Jones,et al.  Parallel Implementations of Functional Programming Languages , 1989, Comput. J..

[23]  Carroll Morgan,et al.  Programming from specifications , 1990, Prentice Hall International Series in computer science.

[24]  Thomas Bemmerl,et al.  Programming tools for distributed multiprocessor computing environments , 1992, Future Gener. Comput. Syst..

[25]  Manfred Broy,et al.  Functional specification of time-sensitive communicating systems , 1993, TSEM.

[26]  Gert Smolka,et al.  Object-Oriented Concurrent Constraint Programming in Oz , 1993, KI.

[27]  Manfred Broy,et al.  The Design of Distributed Systems - An Introduction to FOCUS-revised version , 1992 .

[28]  Erich J. Neuhold,et al.  Formal description of programming concepts , 1991 .

[29]  Steven Tuecke,et al.  Parallel programming with PCN , 1991 .

[30]  Cliff B. Jones,et al.  An Object-Based Design Method for Concurrent Programs , 1992 .

[31]  Nicholas Carriero,et al.  Linda in context , 1989, CACM.