JDT |
FREE Downloads |
|
Haskell |
|||||
|
Haskell is a standardized, purely functional programming language with non-strict semantics, named after logician Haskell Curry. HistoryFollowing the release of Miranda by Research Software Ltd, in 1985, interest in lazy functional languages grew. By 1987, more than a dozen non-strict, purely functional programming languages existed. Of these, Miranda was the most widely used, but was not in the public domain. At the conference on Functional Programming Languages and Computer Architecture (FPCA '87) in Portland, Oregon, a meeting was held during which participants formed a strong consensus that a committee should be formed to define an open standard for such languages. The committee's purpose was to consolidate the existing functional languages into a common one that would serve as a basis for future research in functional-language design. The first version of Haskell ("Haskell 1.0") was defined in 1990. The committee's efforts resulted in a series of language definitions. In late 1997, the series culminated in Haskell 98, intended to specify a stable, minimal, portable version of the language and an accompanying standard library for teaching, and as a base for future extensions. The committee expressly welcomed the creation of extensions and variants of Haskell 98 via adding and incorporating experimental features. In January 1999, the Haskell 98 language standard was originally published as "The Haskell 98 Report". In January 2003, a revised version was published as "Haskell 98 Language and Libraries: The Revised Report". The language continues to evolve rapidly, with the GHC implementation representing the current de facto standard. In early 2006, the process of defining a successor to the Haskell 98 standard, informally named Haskell' ("Haskell Prime"), was begun. This process is intended to produce a minor revision of Haskell 98. Features and extensionsCharacteristic features of Haskell include pattern matching, currying, list comprehensions, guards, definable operators, and single assignment. The language also supports recursive functions and algebraic data types, as well as lazy evaluation. Several variants have been developed: parallelizable versions from MIT and Glasgow University, both called Parallel Haskell; more parallel and distributed versions called Distributed Haskell (formerly Goffin) and Eden; a speculatively evaluating version called Eager Haskell and several object oriented versions: Haskell++, O'Haskell and Mondrian. Concurrent Clean is a close relative of Haskell, whose biggest deviation from Haskell is in the use of uniqueness types for input instead of monads. ApplicationsHaskell is increasingly being used in commercial situations. Audrey Tang's Pugs is an implementation for the long-forthcoming Perl 6 language with an interpreter and compilers that proved useful after just a few months of its writing; similarly, GHC is often a testbed for advanced functional programming features and optimizations. Darcs is a revision control system, with several innovative features. Linspire GNU/Linux chose Haskell for system tools development. Xmonad is a window manager for the X Window System, written entirely in Haskell. Bluespec SystemVerilog is a language for semiconductor design that is an extension of Haskell. Additionally, Bluespec, Inc.'s tools are implemented in Haskell. Article source: http://en.wikipedia.org/wiki/Haskell_(programming_language Go back to Programming Articles home page
|
|