Content deleted Content added
Triptropic (talk | contribs) m wikilinks, corrected Uni name |
|||
Line 1:
'''Hope''' is a small [[functional programming language]] developed in the 1970s at the [[University of Edinburgh
{{cite book
| title = Functional Programming with Hope
Line 17:
| url = http://www.devili.iki.fi/library/issue/136.en.html
| accessdate = 1 April 2015
}}</ref> It predates [[Miranda programming language|Miranda]] and [[Haskell (programming language)|Haskell]] and is contemporaneous with [[ML (programming language)|ML]],
Hope was named for [[Sir Thomas Hope, 8th Baronet|Sir Thomas Hope]] (c. 1681–1771), a Scottish agricultural reformer, after whom ''Hope Park Square'' in Edinburgh, the ___location of the Department of Artificial Intelligence at the time of the development of Hope, was also named.
==Language details==
Line 29:
Unlike [[Haskell (programming language)|Haskell]], changing the order of the clauses does 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 [[:Category:ML programming language family|ML]] 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 evaluation|strict]], but since that one there have been [[lazy evaluation|lazy]] versions and strict versions with lazy constructors (the language described in <ref name="BMS"/> has a lazy constructor for lists only). British Telecom embarked on a project with [[Imperial College London|Imperial College]] to implement a strict version. The first release was coded by Thanos Vassilakis in 1986. Further releases were coded by Mark Tasng of BT.
==References==
|