mirror of
https://github.com/ganelson/inform.git
synced 2024-07-16 22:14:23 +03:00
279 lines
45 KiB
HTML
279 lines
45 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<title>Language Template</title>
|
|
<link href="../docs-assets/Breadcrumbs.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<meta name="viewport" content="width=device-width initial-scale=1">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<meta http-equiv="Content-Language" content="en-gb">
|
|
|
|
<link href="../docs-assets/Contents.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Progress.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Navigation.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Fonts.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Base.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
<link href="../docs-assets/Colours.css" rel="stylesheet" rev="stylesheet" type="text/css">
|
|
|
|
</head>
|
|
<body class="commentary-font">
|
|
<nav role="navigation">
|
|
<h1><a href="../index.html">
|
|
<img src="../docs-assets/Inform.png" height=72">
|
|
</a></h1>
|
|
<ul><li><a href="../index.html">home</a></li>
|
|
</ul><h2>Compiler</h2><ul>
|
|
<li><a href="../structure.html">structure</a></li>
|
|
<li><a href="../inbuildn.html">inbuild</a></li>
|
|
<li><a href="../inform7n.html">inform7</a></li>
|
|
<li><a href="../intern.html">inter</a></li>
|
|
<li><a href="../services.html">services</a></li>
|
|
<li><a href="../secrets.html">secrets</a></li>
|
|
</ul><h2>Other Tools</h2><ul>
|
|
<li><a href="../inblorbn.html">inblorb</a></li>
|
|
<li><a href="../indocn.html">indoc</a></li>
|
|
<li><a href="../inform6.html">inform6</a></li>
|
|
<li><a href="../inpolicyn.html">inpolicy</a></li>
|
|
<li><a href="../inrtpsn.html">inrtps</a></li>
|
|
</ul><h2>Resources</h2><ul>
|
|
<li><a href="../extensions.html">extensions</a></li>
|
|
<li><a href="../kits.html">kits</a></li>
|
|
</ul><h2>Repository</h2><ul>
|
|
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
|
</ul><h2>Related Projects</h2><ul>
|
|
<li><a href="../../../inweb/index.html">inweb</a></li>
|
|
<li><a href="../../../intest/index.html">intest</a></li>
|
|
|
|
</ul>
|
|
</nav>
|
|
<main role="main">
|
|
<!--Weave of 'Language Template' generated by Inweb-->
|
|
<div class="breadcrumbs">
|
|
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><b>EnglishLanguageKit</b></li></ul></div>
|
|
<p class="purpose">The fundamental definitions needed by the parser and the verb library in order to specify the language of play -- that is, the language used for communications between the story file and the player.</p>
|
|
|
|
<ul class="toc"><li><a href="S-lng.html#SP1">§1. Identification</a></li><li><a href="S-lng.html#SP2">§2. Vocabulary</a></li><li><a href="S-lng.html#SP3">§3. Pronouns</a></li><li><a href="S-lng.html#SP4">§4. Descriptors</a></li><li><a href="S-lng.html#SP5">§5. Numbers</a></li><li><a href="S-lng.html#SP6">§6. Time</a></li><li><a href="S-lng.html#SP7">§7. Directions</a></li><li><a href="S-lng.html#SP8">§8. Translation</a></li><li><a href="S-lng.html#SP9">§9. Articles</a></li><li><a href="S-lng.html#SP10">§10. Commands</a></li><li><a href="S-lng.html#SP11">§11. Stubs</a></li></ul><hr class="tocbar">
|
|
|
|
<p class="commentary firstcommentary"><a id="SP1" class="paragraph-anchor"></a><b>§1. Identification. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ENGLISHLANGUAGEKIT</span><span class="plain-syntax"> = </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP2" class="paragraph-anchor"></a><b>§2. Vocabulary. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">AGAIN1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'again'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">AGAIN2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'g//'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">AGAIN3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'again'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OOPS1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'oops'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OOPS2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'o//'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OOPS3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'oops'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">UNDO1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'undo'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">UNDO2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'undo'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">UNDO3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'undo'</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ALL1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'all'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ALL2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'each'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ALL3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'every'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ALL4__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'everything'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ALL5__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'both'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">AND1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'and'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">AND2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'and'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">AND3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'and'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">BUT1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'but'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">BUT2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'except'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">BUT3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'but'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ME1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'me'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ME2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'myself'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">ME3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'self'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OF1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'of'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OF2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'of'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OF3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'of'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OF4__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'of'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OTHER1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'another'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OTHER2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'other'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">OTHER3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'other'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">THEN1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'then'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">THEN2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'then'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">THEN3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'then'</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">NO1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'n//'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">NO2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'no'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">NO3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'no'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">YES1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'y//'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">YES2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'yes'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">YES3__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'yes'</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">AMUSING__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'amusing'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">FULLSCORE1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'fullscore'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">FULLSCORE2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'full'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">QUIT1__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'q//'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">QUIT2__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'quit'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">RESTART__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'restart'</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">RESTORE__WD</span><span class="plain-syntax"> = </span><span class="character-syntax">'restore'</span><span class="plain-syntax">;</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP3" class="paragraph-anchor"></a><b>§3. Pronouns. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">Array</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguagePronouns</span><span class="plain-syntax"> </span><span class="identifier-syntax">table</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="comment-syntax">word possible GNAs connected</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> to follow: to:</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> a i</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> s p s p</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> mfnmfnmfnmfn</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'it'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$001000111000</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'him'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$100000000000</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'her'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$010000000000</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'them'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$000111000111</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP4" class="paragraph-anchor"></a><b>§4. Descriptors. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">Array</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguageDescriptors</span><span class="plain-syntax"> </span><span class="identifier-syntax">table</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="comment-syntax">word possible GNAs descriptor connected</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> to follow: type: to:</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> a i</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> s p s p</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> mfnmfnmfnmfn</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'my'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'this'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'these'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$000111000111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'that'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'those'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$000111000111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'his'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="character-syntax">'him'</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'her'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="character-syntax">'her'</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'their'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="character-syntax">'them'</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'its'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">POSSESS_PK</span><span class="plain-syntax"> </span><span class="character-syntax">'it'</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'the'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">DEFART_PK</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'a//'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111000111000</span><span class="plain-syntax"> </span><span class="identifier-syntax">INDEFART_PK</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'an'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111000111000</span><span class="plain-syntax"> </span><span class="identifier-syntax">INDEFART_PK</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'some'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$000111000111</span><span class="plain-syntax"> </span><span class="identifier-syntax">INDEFART_PK</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'lit'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">LIGHTED_PK</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'lighted'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">LIGHTED_PK</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'unlit'</span><span class="plain-syntax"> </span><span class="constant-syntax">$$111111111111</span><span class="plain-syntax"> </span><span class="identifier-syntax">UNLIGHTED_PK</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP5" class="paragraph-anchor"></a><b>§5. Numbers. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">Array</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguageNumbers</span><span class="plain-syntax"> </span><span class="identifier-syntax">table</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'one'</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax"> </span><span class="character-syntax">'two'</span><span class="plain-syntax"> </span><span class="constant-syntax">2</span><span class="plain-syntax"> </span><span class="character-syntax">'three'</span><span class="plain-syntax"> </span><span class="constant-syntax">3</span><span class="plain-syntax"> </span><span class="character-syntax">'four'</span><span class="plain-syntax"> </span><span class="constant-syntax">4</span><span class="plain-syntax"> </span><span class="character-syntax">'five'</span><span class="plain-syntax"> </span><span class="constant-syntax">5</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'six'</span><span class="plain-syntax"> </span><span class="constant-syntax">6</span><span class="plain-syntax"> </span><span class="character-syntax">'seven'</span><span class="plain-syntax"> </span><span class="constant-syntax">7</span><span class="plain-syntax"> </span><span class="character-syntax">'eight'</span><span class="plain-syntax"> </span><span class="constant-syntax">8</span><span class="plain-syntax"> </span><span class="character-syntax">'nine'</span><span class="plain-syntax"> </span><span class="constant-syntax">9</span><span class="plain-syntax"> </span><span class="character-syntax">'ten'</span><span class="plain-syntax"> </span><span class="constant-syntax">10</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'eleven'</span><span class="plain-syntax"> </span><span class="constant-syntax">11</span><span class="plain-syntax"> </span><span class="character-syntax">'twelve'</span><span class="plain-syntax"> </span><span class="constant-syntax">12</span><span class="plain-syntax"> </span><span class="character-syntax">'thirteen'</span><span class="plain-syntax"> </span><span class="constant-syntax">13</span><span class="plain-syntax"> </span><span class="character-syntax">'fourteen'</span><span class="plain-syntax"> </span><span class="constant-syntax">14</span><span class="plain-syntax"> </span><span class="character-syntax">'fifteen'</span><span class="plain-syntax"> </span><span class="constant-syntax">15</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'sixteen'</span><span class="plain-syntax"> </span><span class="constant-syntax">16</span><span class="plain-syntax"> </span><span class="character-syntax">'seventeen'</span><span class="plain-syntax"> </span><span class="constant-syntax">17</span><span class="plain-syntax"> </span><span class="character-syntax">'eighteen'</span><span class="plain-syntax"> </span><span class="constant-syntax">18</span><span class="plain-syntax"> </span><span class="character-syntax">'nineteen'</span><span class="plain-syntax"> </span><span class="constant-syntax">19</span><span class="plain-syntax"> </span><span class="character-syntax">'twenty'</span><span class="plain-syntax"> </span><span class="constant-syntax">20</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'twenty-one'</span><span class="plain-syntax"> </span><span class="constant-syntax">21</span><span class="plain-syntax"> </span><span class="character-syntax">'twenty-two'</span><span class="plain-syntax"> </span><span class="constant-syntax">22</span><span class="plain-syntax"> </span><span class="character-syntax">'twenty-three'</span><span class="plain-syntax"> </span><span class="constant-syntax">23</span><span class="plain-syntax"> </span><span class="character-syntax">'twenty-four'</span><span class="plain-syntax"> </span><span class="constant-syntax">24</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'twenty-five'</span><span class="plain-syntax"> </span><span class="constant-syntax">25</span><span class="plain-syntax"> </span><span class="character-syntax">'twenty-six'</span><span class="plain-syntax"> </span><span class="constant-syntax">26</span><span class="plain-syntax"> </span><span class="character-syntax">'twenty-seven'</span><span class="plain-syntax"> </span><span class="constant-syntax">27</span><span class="plain-syntax"> </span><span class="character-syntax">'twenty-eight'</span><span class="plain-syntax"> </span><span class="constant-syntax">28</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'twenty-nine'</span><span class="plain-syntax"> </span><span class="constant-syntax">29</span><span class="plain-syntax"> </span><span class="character-syntax">'thirty'</span><span class="plain-syntax"> </span><span class="constant-syntax">30</span>
|
|
<span class="plain-syntax">;</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP6" class="paragraph-anchor"></a><b>§6. Time. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageTimeOfDay</span><span class="plain-syntax"> </span><span class="identifier-syntax">hours</span><span class="plain-syntax"> </span><span class="identifier-syntax">mins</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax"> = </span><span class="identifier-syntax">hours</span><span class="plain-syntax">%12;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">i</span><span class="plain-syntax"> == </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">i</span><span class="plain-syntax"> = </span><span class="constant-syntax">12</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">i</span><span class="plain-syntax"> < </span><span class="constant-syntax">10</span><span class="plain-syntax">) </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="string-syntax">" "</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">, </span><span class="string-syntax">":"</span><span class="plain-syntax">, </span><span class="identifier-syntax">mins</span><span class="plain-syntax">/10, </span><span class="identifier-syntax">mins</span><span class="plain-syntax">%10;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">hours</span><span class="plain-syntax">/12) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="string-syntax">" pm"</span><span class="plain-syntax">; </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="string-syntax">" am"</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">];</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP7" class="paragraph-anchor"></a><b>§7. Directions. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageDirection</span><span class="plain-syntax"> </span><span class="identifier-syntax">d</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">print</span><span class="plain-syntax"> (</span><span class="identifier-syntax">name</span><span class="plain-syntax">) </span><span class="identifier-syntax">d</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">];</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP8" class="paragraph-anchor"></a><b>§8. Translation. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageToInformese</span><span class="plain-syntax">; ];</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP9" class="paragraph-anchor"></a><b>§9. Articles. </b></p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguageAnimateGender</span><span class="plain-syntax"> = </span><span class="identifier-syntax">male</span><span class="plain-syntax">;</span>
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguageInanimateGender</span><span class="plain-syntax"> = </span><span class="identifier-syntax">neuter</span><span class="plain-syntax">;</span>
|
|
|
|
<span class="reserved-syntax">Constant</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguageContractionForms</span><span class="plain-syntax"> = </span><span class="constant-syntax">2</span><span class="plain-syntax">; </span><span class="comment-syntax">English has two:</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax">0 = starting with a consonant</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax">1 = starting with a vowel</span>
|
|
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageContraction</span><span class="plain-syntax"> </span><span class="identifier-syntax">text</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">text</span><span class="plain-syntax">->0 == </span><span class="character-syntax">'a'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'e'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'i'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'o'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'u'</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'A'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'E'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'I'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'O'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'U'</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">];</span>
|
|
|
|
<span class="reserved-syntax">Array</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguageArticles</span><span class="plain-syntax"> --></span>
|
|
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> Contraction form 0: Contraction form 1:</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> Cdef Def Indef Cdef Def Indef</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="string-syntax">"The "</span><span class="plain-syntax"> </span><span class="string-syntax">"the "</span><span class="plain-syntax"> </span><span class="string-syntax">"a "</span><span class="plain-syntax"> </span><span class="string-syntax">"The "</span><span class="plain-syntax"> </span><span class="string-syntax">"the "</span><span class="plain-syntax"> </span><span class="string-syntax">"an "</span><span class="plain-syntax"> </span><span class="comment-syntax">Articles 0</span>
|
|
<span class="plain-syntax"> </span><span class="string-syntax">"The "</span><span class="plain-syntax"> </span><span class="string-syntax">"the "</span><span class="plain-syntax"> </span><span class="string-syntax">"some "</span><span class="plain-syntax"> </span><span class="string-syntax">"The "</span><span class="plain-syntax"> </span><span class="string-syntax">"the "</span><span class="plain-syntax"> </span><span class="string-syntax">"some "</span><span class="plain-syntax">; </span><span class="comment-syntax">Articles 1</span>
|
|
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> a i</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> s p s p</span>
|
|
<span class="plain-syntax"> </span><span class="comment-syntax"> m f n m f n m f n m f n</span>
|
|
|
|
<span class="reserved-syntax">Array</span><span class="plain-syntax"> </span><span class="identifier-syntax">LanguageGNAsToArticles</span><span class="plain-syntax"> --> </span><span class="constant-syntax">0</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax"> </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP10" class="paragraph-anchor"></a><b>§10. Commands. </b><span class="extract"><span class="extract-syntax">LanguageVerbLikesAdverb</span></span> is called by <span class="extract"><span class="extract-syntax">PrintCommand</span></span> when printing an <span class="extract"><span class="extract-syntax">UPTO_PE</span></span>
|
|
error or an inference message. Words which are intransitive verbs, i.e.,
|
|
which require a direction name as an adverb ("walk west"), not a noun
|
|
("I only understood you as far as wanting to touch the ground"), should
|
|
cause the routine to return <span class="extract"><span class="extract-syntax">true</span></span>.
|
|
</p>
|
|
|
|
<p class="commentary"><span class="extract"><span class="extract-syntax">LanguageVerbMayBeName</span></span> is called by <span class="extract"><span class="extract-syntax">NounDomain</span></span> when dealing with
|
|
the player's reply to a "Which do you mean, the short stick or the
|
|
long stick?" prompt from the parser. If the reply is another verb
|
|
(for example, LOOK) then then previous ambiguous command is discarded
|
|
unless it is one of these words which could be both a verb and an
|
|
adjective in a <span class="extract"><span class="extract-syntax">name</span></span> property.
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageVerb</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">switch</span><span class="plain-syntax"> (</span><span class="identifier-syntax">i</span><span class="plain-syntax">) {</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'i//'</span><span class="plain-syntax">,</span><span class="character-syntax">'inv'</span><span class="plain-syntax">,</span><span class="character-syntax">'inventory'</span><span class="plain-syntax">:</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="string-syntax">"take inventory"</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'l//'</span><span class="plain-syntax">: </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="string-syntax">"look"</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'x//'</span><span class="plain-syntax">: </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="string-syntax">"examine"</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="character-syntax">'z//'</span><span class="plain-syntax">: </span><span class="reserved-syntax">print</span><span class="plain-syntax"> </span><span class="string-syntax">"wait"</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">default</span><span class="plain-syntax">: </span><span class="reserved-syntax">rfalse</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> }</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">rtrue</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">];</span>
|
|
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageVerbLikesAdverb</span><span class="plain-syntax"> </span><span class="identifier-syntax">w</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">w</span><span class="plain-syntax"> == </span><span class="character-syntax">'look'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'go'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'push'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'walk'</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">rtrue</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">rfalse</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">];</span>
|
|
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageVerbMayBeName</span><span class="plain-syntax"> </span><span class="identifier-syntax">w</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">w</span><span class="plain-syntax"> == </span><span class="character-syntax">'long'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'short'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'normal'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'brief'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'full'</span><span class="plain-syntax"> </span><span class="reserved-syntax">or</span><span class="plain-syntax"> </span><span class="character-syntax">'verbose'</span><span class="plain-syntax">)</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">rtrue</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">rfalse</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">];</span>
|
|
</pre>
|
|
<p class="commentary firstcommentary"><a id="SP11" class="paragraph-anchor"></a><b>§11. Stubs. </b>To reduce the need for conditional compilation, we provide these stub
|
|
routines:
|
|
</p>
|
|
|
|
<pre class="displayed-code all-displayed-code code-font">
|
|
<span class="plain-syntax">[ </span><span class="identifier-syntax">LanguageIsVerb</span><span class="plain-syntax"> </span><span class="identifier-syntax">buffer</span><span class="plain-syntax"> </span><span class="identifier-syntax">parse</span><span class="plain-syntax"> </span><span class="identifier-syntax">verb_wordnum</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax"> </span><span class="reserved-syntax">rfalse</span><span class="plain-syntax">;</span>
|
|
<span class="plain-syntax">];</span>
|
|
</pre>
|
|
<!--End of weave-->
|
|
|
|
</main>
|
|
</body>
|
|
</html>
|
|
|