http://www.haskell.org/haskellwiki/index.php?title=Pure&feed=atom&action=historyPure - Revision history2014-09-23T05:59:20ZRevision history for this page on the wikiMediaWiki 1.19.5-1+deb7u1http://www.haskell.org/haskellwiki/index.php?title=Pure&diff=56834&oldid=prevBenmachine: Created page with "A function is called '''pure''' if it corresponds to a function in the mathematical sense: it associates each possible input value with an output value, and does nothing else...."2013-09-15T01:36:05Z<p>Created page with "A function is called '''pure''' if it corresponds to a function in the mathematical sense: it associates each possible input value with an output value, and does nothing else...."</p>
<p><b>New page</b></p><div>A function is called '''pure''' if it corresponds to a function in the mathematical sense: it associates each possible input value with an output value, and does nothing else. In particular,<br />
<br />
* it has no ''side effects'', that is to say, invoking it produces no observable effect other than the result it returns; it cannot also ''e.g.'' write to disk, or print to a screen.<br />
* it does not depend on anything other than its parameters, so when invoked in a different context or at a different time with the same arguments, it will produce the same result.<br />
<br />
A programming language may be called '''purely functional''' if evaluation of expressions is pure.<br />
<br />
There has been some debate in the past as to the precise meaning of these terms. See also:<br />
<br />
* [http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.7800 What is a Purely Functional Language?] a 1993 paper which presents a proposed formal definition of the concept,<br />
* [http://conal.net/blog/posts/the-c-language-is-purely-functional The C language is purely functional] (some satire intended),<br />
* [http://conal.net/blog/posts/is-haskell-a-purely-functional-language Is Haskell a purely functional language?]<br />
<br />
[[Category:Glossary]]</div>Benmachine