Report on the FX-91 Programming Language
Abstract
This report gives a defining description of the programming language FX-91. The FX (short for FX-91) programming language is designed to support the parallel implementation of applications that perform both symbolic and scientific computations. The unique features of FX include: (1) An effect system, to discover expression scheduling constraints. An effect is a static description of the side-effects an expression may perform when it is evaluated. Just as a type describes what an expression computes, an effect describes how an expression computes; (2) Abstraction over any kind of description, thus permitting first-class type and effect polymorphism. Effect polymorphism makes the FX effect system more powerful than previous approaches to side-effect analysis in the presence of first-class subroutines; (3) Type and effect inference, so that declaration free programs can be statically type and effect checked. FX also permits explicitly typed programs, and programs that use explicit types only for first-class polymorphic values and modules; and (4) First-class modules, which permit FX to serve as its own configuration language. It also includes an architecture independent module of parallel vector operators.
Document Details
- Document Type
- Technical Report
- Publication Date
- Feb 01, 1992
- Accession Number
- ADA256798
Entities
People
- David K. Gifford
- James W. O'toole
- Mark A. Sheldon
- Pierre Jouvelot
Organizations
- Massachusetts Institute of Technology