68 lines
3.2 KiB
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>-></code> <em>
|
|
âûðàæåíèå</em></blockquote>
|
|
<p>èëè</p>
|
|
<blockquote><em>ñåêöèÿ_ïàðàìåòðîâ</em> <em>ñåêöèÿ_òèïà</em> <code>-></code> <em>
|
|
ñîñòàâíîé îïåðàòîð</em></blockquote>
|
|
<p>èëè</p>
|
|
<blockquote><strong><span class="auto-style1">function</span></strong> <em>
|
|
ñåêöèÿ_ïàðàìåòðîâ</em> <em>ñåêöèÿ_òèïà</em> <code>-></code> <em>âûðàæåíèå</em></blockquote>
|
|
<p>èëè</p>
|
|
<blockquote><span class="auto-style1"><strong>procedure</strong></span> <em>
|
|
ñåêöèÿ_ïàðàìåòðîâ</em> <code>-></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>Ñïèñîê èäåíòèôèêàòîðîâ ñîñòîèò èç ñåêöèé. Êàæäàÿ ñåêöèÿ ñîäåðæèò
|
|
èäåíòèôèêàòîðû, ïåðå÷èñëÿåìûå ÷åðåç çàïÿòóþ, ïîñëå êîòîðûõ ìîæåò ñëåäîâàòü :
|
|
òèï. Ñåêöèè îòäåëÿþòñÿ îäíà îò äðóãîé ñèìâîëîì "òî÷êà ñ çàïÿòîé". Ñïèñîê
|
|
èäåíòèôèêàòîðîâ íå ìîæåò ñîñòîÿòü èç îäíîãî èäåíòèôèêàòîðà áåç óêàçàíèÿ òèïà.</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 -> x+1<br>() -> 1<br>(x,y) -> x*y<br>(x,y:
|
|
integer) -> x*y<br>(x,y: integer): integer -> x*y<br>(x: integer; y:
|
|
integer) -> x*y<br>(x,y: integer) -> <strong>begin</strong> Result := x*y
|
|
<strong>end</strong><br>(x,y: integer) -> <strong>begin</strong> Result :=
|
|
x*y <strong>end</strong><br><strong>function</strong> -> 1<strong><br>
|
|
function</strong> (x,y) -> x*y<br><strong>function</strong> (x,y: integer)
|
|
-> x*y<br><strong>function</strong> (x,y: integer): integer -> x*y<br>
|
|
<strong>function</strong> (x,y: integer): integer -> <strong>begin</strong>
|
|
Result := x*y <strong>end<br>procedure </strong>-> <strong>begin</strong>
|
|
write(1); write(2) <strong>end</strong> <br><strong>procedure</strong> (x:
|
|
integer; s: string)-> <strong>begin</strong> write(x,s) <strong>end</strong> </blockquote>
|
|
<p> </p>
|
|
</body>
|
|
|
|
</html>
|