Hope (programming language): Difference between revisions

Content deleted Content added
WP:LINKs: adds, update-standardizes, needless WP:PIPEs > WP:NOPIPEs, plural > WP:SINGULAR. WP:REFerences: plain text > WP:CITations, standardizes; parameters: adds, fills, author > last + first, update-standardize-conform, reorders. Adds: MOS:COMMENT, WP:CATEGORY.
Line 1:
{{Infobox programming language
| name = Hope
| logo = <!-- Filename -->
| logo caption =
| screenshot = <!-- Filename -->
| screenshot caption =
| sampleCode =
| paradigm = [[Functional programming|functional]]
| family =
| designers = Thanos Vassilakis, Mark Tasng<br/>
| developer = [[BT Group|British Telecom]]<br/>[[Imperial College London]]<br/>[[International Computers Limited]]
| released = {{Start date and age|1980}}
| latest release version =
| latest release date = <!-- {{Start date and age|199y|mm|dd|df=yes}} -->
| typing =
| memory management =
| scope =
| programming language =
| discontinued = Yes
| platform =
| operating system =
| license =
| file ext =
| file format = <!-- or: | file formats = -->
| website = <!-- {{URL|www.example.com}} -->
| implementations =
| dialects = Hope, Hope+
| influenced by = [[NPL (programming language)|NPL]]
| influenced =
}}
'''Hope''' is a small [[programming language]] based on [[functional programming]] developed in the 1970s at the [[University of Edinburgh]].<ref name="BMS">{{cite book |last1=Burstall |first1=R. M. |author1-link=Rod Burstall |last2=MacQueen |first2=D. B. |last3=Sannella |first3=D. T. |date=1980 |chapter=Hope: An Experimental Applicative Language |title=Conference Record of the 1980 LISP Conference |place=Stanford University, Stanford, California, United States |page=136–143}}</ref><ref>
{{cite book |last1=Bailey |first1=Roger |date=1 April 1990 |title=Functional Programming with Hope |series=Ellis Horwood Series in Computers and Their Applications |publisher=Ellis Horwood Ltd}}</ref>
It predates [[Miranda (programming language)|Miranda]] and [[Haskell]] and is contemporaneous with [[ML (programming language)|ML]], also developed at the University. Hope was derived from [[NPL (programming language)|NPL]],<ref name="design"/> a simple functional language developed by [[Rod Burstall]] and [[John Darlington]] in their work on program transformation.<ref>{{cite journal |last1=Burstall |first1=R. M. |author1-link=Rod Burstall |last2=Darlington |first2=J. |author2-link=John Darlington |date=1977 |title=A transformation system for developing recursive programs |journal=Journal of the Association for Computing Machinery |volume=24 |issue=1 |pages=44–67}}</ref> NPL and Hope are notable for being the first languages with call-by-pattern evaluation and [[algebraic data type]]s.<ref>{{Cite book |last1=Hudak |first1=Paul |author1-link=Paul Hudak |last2=Hughes |first2=John |author2-link=John Hughes (computer scientist) |last3=Peyton Jones |first3=Simon |author3-link=Simon Peyton Jones |last4=Wadler |first4=Philip |author4-link=Philip Wadler |date=2007-06-09 |title=A history of Haskell: being lazy with class |publisher=ACM |pages=12–1 |doi=10.1145/1238844.1238856 |isbn=9781595937667 |s2cid=52847907}}</ref>
 
Hope was named for [[Sir Thomas Hope, 8th Baronet|Sir Thomas Hope]] (c. 1681–1771), a Scottish agricultural[[agriculture]] reformer, after whom ''Hope Park Square'' in [[Edinburgh]], the ___location of the Department[[artificial of Artificialintelligence]] Intelligencedepartment at the time of the development of Hope, was also named.
 
==Language details==
Line 23 ⟶ 53:
{{Reflist|refs=
<ref name="design">{{cite conference |last1=Burstall |first1=R. M. |author1-link=Rod Burstall |date=1977 |title=Design considerations for a functional programming language (invited paper) |conference=Proceedings Infotech State of the Art Conference "The Software Revolution" |place=Copenhagen |pages=45–57}}</ref>
<ref name=byte>{{cite magazine |last1=Bailey |first1=Roger |date=August 1985 |url=https://archive.org/stream/BYTE_Vol_10-08_1985-08_The_Amiga#page/n241/mode/2up |title=A Hope Tutorial |magazine=[[Byte (magazine)|Byte]] |volume=10 |issue=8 |page=235–258 |access-date=113 AprilJanuary 20152025}}</ref>
}}