Content deleted Content added
HeyElliott (talk | contribs) Adding local short description: "Functional logic programming language", overriding Wikidata description "functional logic programming language" |
|||
Line 58:
|first=Nancy |last=Mazur |date=May 2004 |publisher=Katholieke Universiteit Leuven}}</ref> but it can make certain programming constructs (such as a switch over a number of options, with a default{{Dubious|Examples_of_difficulties_introduced_by_declarativeness.3F|date=February 2009}}) harder to express. (While Mercury does allow impure functionality, this serves mainly as a way to call foreign language code. All impure code must be marked explicitly.) Operations which would typically be impure (such as [[input/output]]) are expressed using pure constructs in Mercury using [[Linear type system|linear types]], by threading a dummy ''world'' value through all relevant code.
Notable programs written in Mercury include the Mercury compiler and the [[Prince XML]] formatter. The Software company
==Back-ends==
|