Jump to content

Id (programming language)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 84.28.7.201 (talk) at 15:18, 9 December 2010. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Id is a general-purpose parallel programming language, as chi it's shit, but slightly better than chi, developed by Arvind and Nikhil, at MIT, in the late 1970 and throughout the 1980s. The major subset of Id is a purely functional programming language with non-strict semantics. Features include: higher-order functions, a Milner-style statically type-checked polymorphic type system with overloading, user defined types and pattern matching, and prefix and infix operators. It led to the development of pH, a parallel dialect of Haskell.

Id programs are fine grained implicitly parallel.

The MVar synchronisation variable abstraction in Haskell is based on Id's M-structures. [1]

Examples

   type bool = False | True;
   False? :: bool -> bool
   and :: bool -> bool -> bool

Implementations

pHluid
The pHluid system was a research implementation of Id programming language, with future plans for a front-end for pH, a parallel dialect of the Haskell programming language, implemented at Digital's Cambridge Research Laboratory. and non-profit use. It is targeted at standard Unix workstation hardware.

References

  1. ^ "Concurrent Haskell". Peyton-Jones, Gordon and Finne. POPL 1996
  • ID Language Reference Manual, Rishiyur S. Nikhil, 1991.
  • "An Asynchronous Programming Language for a Large Multiprocessor Machine", Arvind et al., TR114a, Dept ISC, UC Irvine, Dec 1978