pascalabcnet/PABCNetHelp/LangGuide/FuncProgramming/lambdasyntax.html

68 lines
3.2 KiB
HTML

<html>
<head>
<object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e">
<param name="Keyword" value="">
</object>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title></title>
<link rel="StyleSheet" href="../../default.css">
<style type="text/css">
.auto-style1 {
font-family: monospace;
font-size: 10pt;
color: #000080;
}
</style>
</head>
<body>
<H1>Ñèíòàêñèñ ëÿìáäà-âûðàæåíèé</H1>
<p>Ëÿìáäà-âûðàæåíèå èìååò ñëåäóþùèé ñèíòàêñèñ:</p>
<blockquote><em>ñåêöèÿ_ïàðàìåòðîâ</em> <em>ñåêöèÿ_òèïà</em> <code>-&gt;</code> <em>
âûðàæåíèå</em></blockquote>
<p>èëè</p>
<blockquote><em>ñåêöèÿ_ïàðàìåòðîâ</em> <em>ñåêöèÿ_òèïà</em> <code>-&gt;</code> <em>
ñîñòàâíîé îïåðàòîð</em></blockquote>
<p>èëè</p>
<blockquote><strong><span class="auto-style1">function</span></strong> <em>
ñåêöèÿ_ïàðàìåòðîâ</em> <em>ñåêöèÿ_òèïà</em> <code>-&gt;</code> <em>âûðàæåíèå</em></blockquote>
<p>èëè</p>
<blockquote><span class="auto-style1"><strong>procedure</strong></span> <em>
ñåêöèÿ_ïàðàìåòðîâ</em> <code>-&gt;</code> <em>ñîñòàâíîé îïåðàòîð</em></blockquote>
<p>Ñåêöèÿ òèïà - ëèáî ïóñòà, ëèáî èìååò âèä:</p>
<blockquote><span class="auto-style1">:</span> <em>òèï</em></blockquote>
<p>Ñåêöèÿ ïàðàìåòðîâ óñòðîåíà ñëåäóþùèì îáðàçîì:</p>
<blockquote><em>èäåíòèôèêàòîð</em></blockquote>
<p>èëè</p>
<blockquote><span class="auto-style1">(</span> <em>ñïèñîê èäåíòèôèêàòîðîâ</em>
<span class="auto-style1">)</span> </blockquote>
<p>Ñïèñîê èäåíòèôèêàòîðîâ ñîñòîèò èç ñåêöèé. Êàæäàÿ ñåêöèÿ ñîäåðæèò
èäåíòèôèêàòîðû, ïåðå÷èñëÿåìûå ÷åðåç çàïÿòóþ, ïîñëå êîòîðûõ ìîæåò ñëåäîâàòü :
òèï. Ñåêöèè îòäåëÿþòñÿ îäíà îò äðóãîé ñèìâîëîì &quot;òî÷êà ñ çàïÿòîé&quot;. Ñïèñîê
èäåíòèôèêàòîðîâ íå ìîæåò ñîñòîÿòü èç îäíîãî èäåíòèôèêàòîðà áåç óêàçàíèÿ òèïà.</p>
<p>Â èíèöèàëèçàòîðàõ ïðîöåäóðíûõ ïåðåìåííûõ âèäà</p>
<blockquote><span class="auto-style1"><strong>var</strong></span> <em>èìÿ</em><span class="auto-style1">:
</span><em>òèï</em> <span class="auto-style1">:=</span> <em>ëÿìáäà-âûðàæåíèå</em></blockquote>
<p>åñëè ëÿìáäà-âûðàæåíèå íå íà÷èíàåòñÿ ñ êëþ÷åâîãî ñëîâà <strong>
<span class="auto-style1">function</span></strong> èëè <span class="auto-style1">
<strong>procedure</strong></span>, òî â ñåêöèè ïàðàìåòðîâ äîïóñòèìû òîëüêî
ïåðåìåííûå áåç óêàçàíèÿ òèïà, ïåðå÷èñëÿåìûå ÷åðåç çàïÿòóþ; ñåêöèÿ òèïà òàêæå
äîëæíà áûòü ïóñòîé</p>
<p>Íàïðèìåð:</p>
<blockquote class="auto-style1">x -&gt; x+1<br>() -&gt; 1<br>(x,y) -&gt; x*y<br>(x,y:
integer) -&gt; x*y<br>(x,y: integer): integer -&gt; x*y<br>(x: integer; y:
integer) -&gt; x*y<br>(x,y: integer) -&gt; <strong>begin</strong> Result := x*y
<strong>end</strong><br>(x,y: integer) -&gt; <strong>begin</strong> Result :=
x*y <strong>end</strong><br><strong>function</strong> -&gt; 1<strong><br>
function</strong> (x,y) -&gt; x*y<br><strong>function</strong> (x,y: integer)
-&gt; x*y<br><strong>function</strong> (x,y: integer): integer -&gt; x*y<br>
<strong>function</strong> (x,y: integer): integer -&gt; <strong>begin</strong>
Result := x*y <strong>end<br>procedure </strong>-&gt; <strong>begin</strong>
write(1); write(2) <strong>end</strong> <br><strong>procedure</strong> (x:
integer; s: string)-&gt; <strong>begin</strong> write(x,s) <strong>end</strong> </blockquote>
<p>&nbsp;</p>
</body>
</html>