H ? « »

Language peer sets for ZPL:
United States
United States/1993
Designed 1993
1990s languages
Fifth generation
Post-Cold War
Genus Array
Numerical Scientific
Array
Rank 1 unlabelled
Rank 1
Array/1993
Rank 1 unlabelled/1993
Rank 1/1993
Array/United States
Rank 1 unlabelled/United States
Rank 1/United States
Numerical Scientific
Numerical Scientific/1993
Numerical Scientific/us

ZPL (3293/zpl001)

logo

Scientific parallel array processing language 

alternate simple view
Country: United States
Designed 1993
Published: 1993
Genus: Array
Sammet category: Numerical Scientific


for Z-Level Programming Language

Array programming language with natural internal parallel processing capablities, created as a subset of A-ZPL. Lin (1993) describes it as the parallel-implicit compent of the Orca languages

The design goals were (Lin 1993):
  • Allow users to program at a high level, namely, by using arrays.
  • Provide an extremely efficient language. The use of high level abstractions can supply information to optimizing compilers that lower level languages cannot. For example, communication is only induced by operators such as scan and "at." It is not possible to generate irregular communication.
  • Provide a clean language with only a few central concepts. This, too, is intended to help both the ZPL compiler writer and the applications programmer by reducing feature interaction. There are no explicitly parallel constructs.
  • Provide support for boundary conditions since they are the most tedious aspect of data parallel computing.
  • Provide freedom to the MIMD aspects of Orca. Although ZPL can be viewed as a stand­alone language, ZPL must also fit in the framework of the Orca languages where programmers will write their own MIMD phases. This integration is possible because ZPL makes few assumptions regarding parallelism.

    Related languages
    A-ZPL ZPL   Subset

    References:
  • Lin, Calvin and Snyder, Lawrence (1993) Lin, Calvin and Snyder, Lawrence "ZPL: An Array Sublanguage" pp. 96-114, 1993. Abstract
          in D. Gelernter, A. Nicolau, and D. Padua, eds (1990) D. Gelernter, A. Nicolau, and D. Padua, eds "Languages and Compilers for Parallel Computing" MIT Press 1990,
  • Calvin Lin. (1996) Calvin Lin. ZPL Language Reference Manual (DRAFT), Technical Report UW-CSE-TR 94-10-06, University of Washington, May, 1996. (Revised October, 1996)
          in D. Gelernter, A. Nicolau, and D. Padua, eds (1990) D. Gelernter, A. Nicolau, and D. Padua, eds "Languages and Compilers for Parallel Computing" MIT Press 1990,
  • Snyder, Lawrence (1997) Snyder, Lawrence "A programmers guide to ZPL" Technical report, University of Washington, Seattle, WA, May 1997.
          in D. Gelernter, A. Nicolau, and D. Padua, eds (1990) D. Gelernter, A. Nicolau, and D. Padua, eds "Languages and Compilers for Parallel Computing" MIT Press 1990,
  • Snyder, Lawrence (1999) Snyder, Lawrence "A programmer's guide to ZPL" Cambridge, Mass., MIT Press.
          in D. Gelernter, A. Nicolau, and D. Padua, eds (1990) D. Gelernter, A. Nicolau, and D. Padua, eds "Languages and Compilers for Parallel Computing" MIT Press 1990,
  • Demetrio Rey, Joss Stubblefield, James Canning (2002) Demetrio Rey, Joss Stubblefield, James Canning "Porting the parallel array programming language ZPL to an embedded multicomputing system" pp168-175 Abstract
          in [APL02] (2002) [APL02] Proceedings of the 2002 conference on APL: array processing languages: lore, problems, and applications
  • (2002) Library of Congress Subject Headings Z27
          in [APL02] (2002) [APL02] Proceedings of the 2002 conference on APL: array processing languages: lore, problems, and applications
    Resources
    • ZPL project at University of Washington
      ZPL
      A Portable, High Performance
      Parallel Programming Language for
      Science and Engineering Computations


      --------------------------------------------------------------------------------

      ZPL is an array programming language designed from first principles for fast execution on both sequential and parallel computers. It provides a convenient high-level programming medium for supercomputers and large-scale clusters with efficiency comparable to hand-coded message passing. It is the perfect alternative to using a sequential language like C or Fortran and a message passing library like MPI. So...are you tired of MPI?


      More than any other parallel programming facility, ZPL is appropriate for non-parallel jobs as well. It's high-level array-based syntax make it ideal for many scientific and engineering computations. Programmers with scientific computing experience can generally learn ZPL in a few hours. Those who have used MATLAB or Fortran 90 may already be acquainted with array programming style.

    Search in: Google  Google scholar  World Cat  Yahoo  Overture  DBLP  Monash bib  NZ  IEEE  ACM portal  CiteSeer  CSB  ncstrl  jstor  Bookfinder