NPL (programming language): Difference between revisions

Content deleted Content added
m link
m More footnotes
 
(15 intermediate revisions by 10 users not shown)
Line 1:
{{for|other programming languages and concepts abbreviated as NPL|NPL (disambiguation)}}
{{multiple issues|
{{Unreferenced|date=March 2008}}
{{primary sources|date=July 2019}}
{{More footnotes|date=July 2019}}
}}
 
'''NPL''' wasis a [[Functional programming|functional programming language]] with [[pattern matching]] designed by [[Rod Burstall]] and [[John Darlington]] in 1977. The language allowedallows certain sets and logic constructs to appear on the right -hand side of definitions, Ee.g.
 
setofeven(X) <= <:x: x in X & even(x) :>
 
The NPL interpreter evaluates the list of generators from left to right so conditions can mention any bound variables that occur to their left. These were known as [[set comprehensionscomprehension]]s. NPL eventually evolved into [[Hope programming language|Hope]] but lost set comprehensions, which weremade calleda reappearance in the form of [[list comprehension]]s in later functional languages.<ref name="foldoc">{{foldoc|NPL}}</ref>
 
==References==
''Reference: John Darlington, "Program Transformation and Synthesis: Present Capabilities", Research Report No. 77/43, Dept. of Computing and Control, Imperial College of Science and Technology, London September 1977.''
{{Reflist}}
 
''Reference:* John Darlington, (1977). "Program Transformation and Synthesis: Present Capabilities",. Research Report No. 77/43, Dept. of Computing and Control, Imperial College of Science and Technology, London September 1977.''
{{FOLDOC}}
 
[[Category:Academic programming languages]]
[[Category:Functional languages]]
[[Category:History of computing in the United Kingdom]]
 
{{compu-lang-stub}}