Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 7ebd25ac536d248d499a3ce2acda963a > files > 3349

Macaulay2-1.3.1-8.fc15.i686.rpm

<?xml version="1.0" encoding="utf-8" ?>  <!-- for emacs: -*- coding: utf-8 -*- -->
<!-- Apache may like this line in the file .htaccess: AddCharset utf-8 .html -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN"	 "http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg-flat.dtd" >
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head><title>-> -- make a function</title>
<link rel="stylesheet" type="text/css" href="../../../../Macaulay2/Style/doc.css"/>
</head>
<body>
<table class="buttons">
  <tr>
    <td><div><a href="__at_at.html">next</a> | <a href="___S__P__A__C__E.html">previous</a> | <a href="__at_at.html">forward</a> | <a href="___S__P__A__C__E.html">backward</a> | <a href="_operators.html">up</a> | <a href="index.html">top</a> | <a href="master.html">index</a> | <a href="toc.html">toc</a> | <a href="http://www.math.uiuc.edu/Macaulay2/">Macaulay2 web site</a></div>

    </td>
  </tr>
</table>
<div><a href="index.html" title="">Macaulay2Doc</a> > <a href="___The_sp__Macaulay2_splanguage.html" title="">The Macaulay2 language</a> > <a href="_operators.html" title="">operators</a> > <a href="_-_gt.html" title="make a function">-></a></div>
<hr/>
<div><h1>-> -- make a function</h1>
<div class="single"><h2>Description</h2>
<div><tt>x -> e</tt> -- denotes a function.  When the function is called, the initial value of the variable x is the argument if there is just one, or else is the sequence of arguments.<br/><tt>(x) -> e</tt> -- denotes a function of one argument.  When the function is applied to an expression w three things may happen:<ul><li>if w is not a sequence, then the initial value of x is w;</li>
<li>if w is a sequence of length one, then the initial value of x is the unique element of w; or</li>
<li>if w is a sequence of length other than one, then it is an error.</li>
</ul>
<br/><tt>(x,y) -> e</tt> -- denotes a function of two arguments.<p/>
Similarly for more arguments.<p/>
These operations create what is usually called a <i>closure</i>, which signifies that the function remembers the values of local variables in effect at the time of its creation, can change those values, and share the changes with other functions created at the same time.<table class="examples"><tr><td><pre>i1 : f = x -> 2*x+1

o1 = f

o1 : FunctionClosure</pre>
</td></tr>
<tr><td><pre>i2 : f 100

o2 = 201</pre>
</td></tr>
</table>
The class of all functions is <a href="___Function.html" title="the class of all functions">Function</a>.</div>
</div>
<div class="waystouse"><h2>For the programmer</h2>
<p>The object <a href="_-_gt.html" title="make a function">-></a> is <span>a <a href="___Keyword.html">keyword</a></span>.</p>
</div>
</div>
</body>
</html>