Hope (programming language)

Hope (programming language)

Hope is a small functional programming language developed in the early 1980s prior to Miranda and Haskell. It is notable for being the first language with call-by-pattern evaluation and algebraic data types. Hope is an important language in the development of functional programming.

A Hope tutorial by Roger Bailey was featured in the August 1985 issue of Byte on declarative programming.

A factorial program in Hope is dec fact : num -> num; --- fact 0 <= 1; --- fact n <= n*fact(n-1);Unlike in Haskell, changing the order of the clauses would not change the meaning of the program, because Hope's pattern matching always favors more specific patterns over less specific ones.

Another way in which Hope differs from Haskell and is that explicit type declarations in Hope are required: There is no option to use a type-inference algorithm in Hope.

The first implementation of Hope was strict, but since that one there have been lazy versions and strict versions with lazy constructors.

External links

* [http://www.soi.city.ac.uk/~ross/Hope/ Hope homepage]
* [http://haskell.org/haskellwiki/History_of_Haskell History of Haskell] which mentions Hope being the first language with algebraic data types.
* [http://www.devili.iki.fi/library/issue/136.en.html table of contents of Byte, August 1985]


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Haskell (programming language) — Haskell Paradigm(s) functional, lazy/non strict, modular Appeared in 1990 Designed by Simon Peyton Jones, Lennart Aug …   Wikipedia

  • Miranda (programming language) — Miranda Paradigm(s) lazy, functional, declarative Appeared in 1985 Designed by David Turner Developer …   Wikipedia

  • Qi (programming language) — Qi is a functional programming language developed by Dr Mark Tarver and introduced in its current form in April 2005 under the GNU GPL license. Although Qi is written in Lisp, it includes most of the features common to modern functional… …   Wikipedia

  • Dexterity programming language — The Dexterity programming language was designed in the early 1990s for the implementation of platform independent graphical accounting software. Dexterity itself is written in the C programming language [1]. It was used in the development of… …   Wikipedia

  • NPL (programming language) — For other programming languages and concepts abbreviated as NPL, see NPL (disambiguation). NPL was a functional language with pattern matching designed by Rod Burstall and John Darlington in 1977. The language allowed certain sets and logic… …   Wikipedia

  • Hope (disambiguation) — Hope is a confidence in something desired.Hope may also refer to:* Hope (surname), a family name * Hope (virtue), one of the three theological virtues in Christian tradition * Hope Diamond, a famous diamond * HOPE Scholarship, a university… …   Wikipedia

  • Microsoft Visual Programming Language — или MVPL  язык визуального и поточного программирования, разработанный корпорацией Microsoft для своей Microsoft Robotics Developer Studio. Microsoft Visual Programming Language выделяется среди прочих языков программирования Microsoft,… …   Википедия

  • WATFIV (programming language) — WATFIV, or WATerloo FORTRAN IV, developed at the University of Waterloo, Canada is an implementation of Fortran IV. It is the successor of WATFOR.WATFIV was in turn succeeded by later versions of WATFOR. WATFIV was used from the late 1960s into… …   Wikipedia

  • language — /lang gwij/, n. 1. a body of words and the systems for their use common to a people who are of the same community or nation, the same geographical area, or the same cultural tradition: the two languages of Belgium; a Bantu language; the French… …   Universalium

  • Hope and Fear — Star Trek: Voyager episode Episode no. Season 4 Episode 26 Directed by Winrich Kolbe Written by …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”