1
0
Fork 0
mirror of https://github.com/ganelson/inform.git synced 2024-06-26 04:00:43 +03:00

Implemented -locale across all tools

This commit is contained in:
Graham Nelson 2020-07-05 11:01:27 +01:00
parent fe8e91e478
commit 267779bdbb
37 changed files with 2376 additions and 2265 deletions

View file

@ -1,6 +1,6 @@
# Inform 7 # Inform 7
v10.1.0-alpha.1+6Q66 'Krypton' (4 July 2020) v10.1.0-alpha.1+6Q67 'Krypton' (5 July 2020)
## About Inform 7 ## About Inform 7

View file

@ -1,3 +1,3 @@
Prerelease: alpha.1 Prerelease: alpha.1
Build Date: 4 July 2020 Build Date: 5 July 2020
Build Number: 6Q66 Build Number: 6Q67

View file

@ -53,6 +53,7 @@
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../arch-module/1-am.html#SP3" class="function-link"><span class="function-syntax">ArchModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../arch-module/1-am.html#SP3" class="function-link"><span class="function-syntax">ArchModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP14" class="function-link"><span class="function-syntax">CommandLine::declare_heading</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">L</span><span class="string-syntax">"inexample: a tool for testing foundation facilities\n"</span><span class="plain-syntax">);</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP14" class="function-link"><span class="function-syntax">CommandLine::declare_heading</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">L</span><span class="string-syntax">"inexample: a tool for testing foundation facilities\n"</span><span class="plain-syntax">);</span>

View file

@ -62,6 +62,7 @@
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../building-module/1-bm.html#SP4" class="function-link"><span class="function-syntax">BuildingModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../building-module/1-bm.html#SP4" class="function-link"><span class="function-syntax">BuildingModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../bytecode-module/1-bm2.html#SP3" class="function-link"><span class="function-syntax">BytecodeModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../bytecode-module/1-bm2.html#SP3" class="function-link"><span class="function-syntax">BytecodeModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -104,6 +104,7 @@ file, for instance.
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">argv</span><span class="plain-syntax">[]) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> *</span><span class="identifier-syntax">argv</span><span class="plain-syntax">[]) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="1-bsc.html#SP4" class="function-link"><span class="function-syntax">Basics::register_mreasons</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="1-bsc.html#SP4" class="function-link"><span class="function-syntax">Basics::register_mreasons</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">blurb_filename</span><span class="plain-syntax"> = </span><a href="../../../inweb/docs/foundation-module/3-fln.html#SP2" class="function-link"><span class="function-syntax">Filenames::in</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"Release.blurb"</span><span class="plain-syntax">);</span> <span class="plain-syntax"> </span><span class="identifier-syntax">blurb_filename</span><span class="plain-syntax"> = </span><a href="../../../inweb/docs/foundation-module/3-fln.html#SP2" class="function-link"><span class="function-syntax">Filenames::in</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"Release.blurb"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">blorb_filename</span><span class="plain-syntax"> = </span><a href="../../../inweb/docs/foundation-module/3-fln.html#SP2" class="function-link"><span class="function-syntax">Filenames::in</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"story.zblorb"</span><span class="plain-syntax">);</span> <span class="plain-syntax"> </span><span class="identifier-syntax">blorb_filename</span><span class="plain-syntax"> = </span><a href="../../../inweb/docs/foundation-module/3-fln.html#SP2" class="function-link"><span class="function-syntax">Filenames::in</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"story.zblorb"</span><span class="plain-syntax">);</span>

View file

@ -108,6 +108,7 @@ on; then to carry out that work, and then shut down again.
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">(); </span><span class="comment-syntax"> must be started first</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">(); </span><span class="comment-syntax"> must be started first</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../html-module/1-hm.html#SP2" class="function-link"><span class="function-syntax">HTMLModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../html-module/1-hm.html#SP2" class="function-link"><span class="function-syntax">HTMLModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -57,8 +57,9 @@ definition we need to make is:
<pre class="definitions code-font"><span class="definition-keyword">define</span> <span class="constant-syntax">PROGRAM_NAME</span><span class="plain-syntax"> </span><span class="string-syntax">"indoc"</span> <pre class="definitions code-font"><span class="definition-keyword">define</span> <span class="constant-syntax">PROGRAM_NAME</span><span class="plain-syntax"> </span><span class="string-syntax">"indoc"</span>
</pre> </pre>
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Basics::start</span><button class="popup" onclick="togglePopup('usagePopup1')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup1">Usage of <span class="code-font"><span class="function-syntax">Basics::start</span></span>:<br/>Main - <a href="1-mn.html#SP1">&#167;1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">void</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Basics::start</span><button class="popup" onclick="togglePopup('usagePopup1')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup1">Usage of <span class="code-font"><span class="function-syntax">Basics::start</span></span>:<br/>Main - <a href="1-mn.html#SP1">&#167;1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-bsc.html#SP1_2" class="named-paragraph-link"><span class="named-paragraph">Declare the debugging log aspects</span><span class="named-paragraph-number">1.2</span></a></span><span class="plain-syntax">;</span> <span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-bsc.html#SP1_2" class="named-paragraph-link"><span class="named-paragraph">Declare the debugging log aspects</span><span class="named-paragraph-number">1.2</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">}</span> <span class="plain-syntax">}</span>

View file

@ -55,7 +55,7 @@ chosen format, a process we'll call "rendering". We do this in two passes.
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">no_examples</span><span class="plain-syntax"> = </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">no_examples</span><span class="plain-syntax"> = </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="1-bsc.html#SP1" class="function-link"><span class="function-syntax">Basics::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="1-bsc.html#SP1" class="function-link"><span class="function-syntax">Basics::start</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_1" class="named-paragraph-link"><span class="named-paragraph">Start up indoc</span><span class="named-paragraph-number">1.1</span></a></span><span class="plain-syntax">;</span> <span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_1" class="named-paragraph-link"><span class="named-paragraph">Start up indoc</span><span class="named-paragraph-number">1.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_2" class="named-paragraph-link"><span class="named-paragraph">Make a first-pass scan of the rawtext</span><span class="named-paragraph-number">1.2</span></a></span><span class="plain-syntax">;</span> <span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_2" class="named-paragraph-link"><span class="named-paragraph">Make a first-pass scan of the rawtext</span><span class="named-paragraph-number">1.2</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_3" class="named-paragraph-link"><span class="named-paragraph">Render the rawtext as documentation</span><span class="named-paragraph-number">1.3</span></a></span><span class="plain-syntax">;</span> <span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_3" class="named-paragraph-link"><span class="named-paragraph">Render the rawtext as documentation</span><span class="named-paragraph-number">1.3</span></a></span><span class="plain-syntax">;</span>

View file

@ -58,6 +58,7 @@
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../inflections-module/1-im.html#SP3" class="function-link"><span class="function-syntax">InflectionsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../inflections-module/1-im.html#SP3" class="function-link"><span class="function-syntax">InflectionsModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -97,6 +97,7 @@ when they want I7 to run.
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">(); </span><span class="comment-syntax"> must be started first</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">(); </span><span class="comment-syntax"> must be started first</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../inflections-module/1-im.html#SP3" class="function-link"><span class="function-syntax">InflectionsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../inflections-module/1-im.html#SP3" class="function-link"><span class="function-syntax">InflectionsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -77,32 +77,31 @@ which take more than 1/1000th of the total running time.
<pre class="undisplayed-code all-displayed-code code-font"> <pre class="undisplayed-code all-displayed-code code-font">
<span class="plain-syntax">100.0% in inform7 run</span> <span class="plain-syntax">100.0% in inform7 run</span>
<span class="plain-syntax"> 66.7% in compilation to Inter</span> <span class="plain-syntax"> 67.4% in compilation to Inter</span>
<span class="plain-syntax"> 26.3% in </span><a href="../core-module/22-cs.html#SP10" class="internal">Phrases::Manager::compile_first_block</a> <span class="plain-syntax"> 27.5% in </span><a href="../core-module/22-cs.html#SP10" class="internal">Phrases::Manager::compile_first_block</a>
<span class="plain-syntax"> 8.7% in </span><a href="../core-module/22-cs.html#SP14" class="internal">Phrases::Manager::compile_as_needed</a> <span class="plain-syntax"> 8.5% in </span><a href="../core-module/22-cs.html#SP14" class="internal">Phrases::Manager::compile_as_needed</a>
<span class="plain-syntax"> 6.8% in </span><a href="../core-module/17-rs.html#SP7" class="internal">Strings::compile_responses</a> <span class="plain-syntax"> 6.8% in </span><a href="../core-module/17-rs.html#SP7" class="internal">Strings::compile_responses</a>
<span class="plain-syntax"> 6.1% in </span><a href="../core-module/16-cmw2.html#SP2" class="internal">World::Compile::compile</a> <span class="plain-syntax"> 5.7% in </span><a href="../core-module/16-cmw2.html#SP2" class="internal">World::Compile::compile</a>
<span class="plain-syntax"> 3.2% in </span><a href="../core-module/9-tfa.html#SP7" class="internal">Assertions::Traverse::traverse1</a> <span class="plain-syntax"> 3.1% in </span><a href="../core-module/9-tfa.html#SP7" class="internal">Assertions::Traverse::traverse1</a>
<span class="plain-syntax"> 2.8% in </span><a href="../core-module/7-ns.html#SP8" class="internal">Sentences::VPs::traverse</a> <span class="plain-syntax"> 2.9% in </span><a href="../core-module/7-ns.html#SP8" class="internal">Sentences::VPs::traverse</a>
<span class="plain-syntax"> 2.0% in </span><a href="../core-module/22-cs.html#SP13" class="internal">Phrases::Manager::RulePrintingRule_routine</a> <span class="plain-syntax"> 2.2% in </span><a href="../core-module/22-cs.html#SP13" class="internal">Phrases::Manager::RulePrintingRule_routine</a>
<span class="plain-syntax"> 1.9% in </span><a href="../core-module/22-cs.html#SP12" class="internal">Phrases::Manager::rulebooks_array</a> <span class="plain-syntax"> 1.8% in </span><a href="../core-module/22-cs.html#SP12" class="internal">Phrases::Manager::rulebooks_array</a>
<span class="plain-syntax"> 1.1% in </span><a href="../core-module/6-nv.html#SP18" class="internal">NewVerbs::ConjugateVerb</a> <span class="plain-syntax"> 1.1% in </span><a href="../core-module/6-nv.html#SP20" class="internal">NewVerbs::ConjugateVerb</a>
<span class="plain-syntax"> 0.7% in </span><a href="../core-module/22-cs.html#SP7" class="internal">Phrases::Manager::parse_rule_parameters</a>
<span class="plain-syntax"> 0.7% in </span><a href="../core-module/22-cs.html#SP4" class="internal">Phrases::Manager::traverse</a> <span class="plain-syntax"> 0.7% in </span><a href="../core-module/22-cs.html#SP4" class="internal">Phrases::Manager::traverse</a>
<span class="plain-syntax"> 0.3% in </span><a href="../core-module/22-cs.html#SP12" class="internal">Phrases::Manager::compile_rulebooks</a> <span class="plain-syntax"> 0.3% in </span><a href="../core-module/22-cs.html#SP12" class="internal">Phrases::Manager::compile_rulebooks</a>
<span class="plain-syntax"> 0.3% in </span><a href="../core-module/22-cs.html#SP7" class="internal">Phrases::Manager::parse_rule_parameters</a>
<span class="plain-syntax"> 0.3% in </span><a href="../core-module/22-cs.html#SP2" class="internal">Phrases::Manager::traverse_for_names</a> <span class="plain-syntax"> 0.3% in </span><a href="../core-module/22-cs.html#SP2" class="internal">Phrases::Manager::traverse_for_names</a>
<span class="plain-syntax"> 0.3% in </span><a href="../core-module/6-rlt.html#SP29" class="internal">Relations::compile_defined_relations</a> <span class="plain-syntax"> 0.3% in </span><a href="../core-module/6-rlt.html#SP29" class="internal">Relations::compile_defined_relations</a>
<span class="plain-syntax"> 0.1% in </span><a href="../core-module/9-tfa.html#SP7" class="internal">Assertions::Traverse::traverse2</a> <span class="plain-syntax"> 0.1% in </span><a href="../core-module/9-tfa.html#SP7" class="internal">Assertions::Traverse::traverse2</a>
<span class="plain-syntax"> 0.1% in </span><a href="../core-module/6-bp.html#SP46" class="internal">BinaryPredicates::make_built_in_further</a>
<span class="plain-syntax"> 0.1% in </span><a href="../if-module/5-gv.html#SP26" class="internal">PL::Parsing::Verbs::compile_all</a> <span class="plain-syntax"> 0.1% in </span><a href="../if-module/5-gv.html#SP26" class="internal">PL::Parsing::Verbs::compile_all</a>
<span class="plain-syntax"> 0.1% in </span><a href="../core-module/7-rs.html#SP3" class="internal">Sentences::RuleSubtrees::register_recently_lexed_phrases</a> <span class="plain-syntax"> 0.1% in </span><a href="../core-module/7-rs.html#SP3" class="internal">Sentences::RuleSubtrees::register_recently_lexed_phrases</a>
<span class="plain-syntax"> 0.1% in </span><a href="../core-module/1-wtc.html#SP8" class="internal">Task::load_types</a> <span class="plain-syntax"> 0.1% in </span><a href="../core-module/1-wtc.html#SP8" class="internal">Task::load_types</a>
<span class="plain-syntax"> 0.1% in </span><a href="../core-module/16-cmw.html#SP1" class="internal">World::complete</a> <span class="plain-syntax"> 0.1% in </span><a href="../core-module/16-cmw.html#SP1" class="internal">World::complete</a>
<span class="plain-syntax"> 4.0% not specifically accounted for</span> <span class="plain-syntax"> 3.9% not specifically accounted for</span>
<span class="plain-syntax"> 30.9% in running Inter pipeline</span> <span class="plain-syntax"> 30.1% in running Inter pipeline</span>
<span class="plain-syntax"> 10.3% in step preparation</span> <span class="plain-syntax"> 9.8% in step preparation</span>
<span class="plain-syntax"> 9.9% in inter step 2/12: link</span> <span class="plain-syntax"> 9.6% in inter step 2/12: link</span>
<span class="plain-syntax"> 7.2% in inter step 12/12: generate inform6 -&gt; auto.inf</span> <span class="plain-syntax"> 7.0% in inter step 12/12: generate inform6 -&gt; auto.inf</span>
<span class="plain-syntax"> 0.3% in inter step 9/12: make-identifiers-unique</span> <span class="plain-syntax"> 0.3% in inter step 9/12: make-identifiers-unique</span>
<span class="plain-syntax"> 0.1% in inter step 10/12: reconcile-verbs</span> <span class="plain-syntax"> 0.1% in inter step 10/12: reconcile-verbs</span>
<span class="plain-syntax"> 0.1% in inter step 11/12: eliminate-redundant-labels</span> <span class="plain-syntax"> 0.1% in inter step 11/12: eliminate-redundant-labels</span>
@ -110,9 +109,9 @@ which take more than 1/1000th of the total running time.
<span class="plain-syntax"> 0.1% in inter step 6/12: assimilate</span> <span class="plain-syntax"> 0.1% in inter step 6/12: assimilate</span>
<span class="plain-syntax"> 0.1% in inter step 7/12: resolve-external-symbols</span> <span class="plain-syntax"> 0.1% in inter step 7/12: resolve-external-symbols</span>
<span class="plain-syntax"> 0.1% in inter step 8/12: inspect-plugs</span> <span class="plain-syntax"> 0.1% in inter step 8/12: inspect-plugs</span>
<span class="plain-syntax"> 1.9% not specifically accounted for</span> <span class="plain-syntax"> 2.1% not specifically accounted for</span>
<span class="plain-syntax"> 2.0% in supervisor</span> <span class="plain-syntax"> 2.0% in supervisor</span>
<span class="plain-syntax"> 0.2% not specifically accounted for</span> <span class="plain-syntax"> 0.4% not specifically accounted for</span>
</pre> </pre>
<p class="commentary firstcommentary"><a id="SP3"></a><b>&#167;3. Memory consumption. </b>The following gives some idea of which classes of object have the most <p class="commentary firstcommentary"><a id="SP3"></a><b>&#167;3. Memory consumption. </b>The following gives some idea of which classes of object have the most
instances, and also of how Inform's memory tends to be used in practice. instances, and also of how Inform's memory tends to be used in practice.
@ -121,89 +120,91 @@ represent less than 1/1000th of the total.
</p> </p>
<pre class="undisplayed-code all-displayed-code code-font"> <pre class="undisplayed-code all-displayed-code code-font">
<span class="plain-syntax">Total memory consumption was 256347K = 250 MB</span> <span class="plain-syntax">Total memory consumption was 256243K = 250 MB</span>
<span class="plain-syntax">62.4% was used for 1335177 objects, in 267912 frames in 200 x 800K = 160000K = 156 MB:</span> <span class="plain-syntax">62.4% was used for 1347149 objects, in 270289 frames in 200 x 800K = 160000K = 156 MB:</span>
<span class="plain-syntax"> 9.8% inter_tree_node_array 36 x 8192 = 294912 objects, 25953408 bytes</span> <span class="plain-syntax"> 9.8% inter_tree_node_array 36 x 8192 = 294912 objects, 25953408 bytes</span>
<span class="plain-syntax"> 5.5% text_stream_array 2587 x 100 = 258700 objects, 14569984 bytes</span> <span class="plain-syntax"> 5.5% text_stream_array 2569 x 100 = 256900 objects, 14468608 bytes</span>
<span class="plain-syntax"> 3.9% parse_node 130338 objects, 10427040 bytes</span> <span class="plain-syntax"> 3.9% parse_node 130221 objects, 10417680 bytes</span>
<span class="plain-syntax"> 2.8% parse_node_annotation_array 470 x 500 = 235000 objects, 7535040 bytes</span>
<span class="plain-syntax"> 2.8% verb_conjugation 160 objects, 7425280 bytes</span> <span class="plain-syntax"> 2.8% verb_conjugation 160 objects, 7425280 bytes</span>
<span class="plain-syntax"> 2.7% parse_node_annotation_array 445 x 500 = 222500 objects, 7134240 bytes</span>
<span class="plain-syntax"> 2.4% inter_symbol_array 70 x 1024 = 71680 objects, 6310080 bytes</span> <span class="plain-syntax"> 2.4% inter_symbol_array 70 x 1024 = 71680 objects, 6310080 bytes</span>
<span class="plain-syntax"> 1.9% linked_list 9033 objects, 5058480 bytes</span> <span class="plain-syntax"> 1.9% linked_list 8915 objects, 4992400 bytes</span>
<span class="plain-syntax"> 1.4% map_data 778 objects, 3690832 bytes</span> <span class="plain-syntax"> 1.3% pcalc_prop_array 24 x 1000 = 24000 objects, 3648768 bytes</span>
<span class="plain-syntax"> 1.3% pcalc_prop_array 24 x 1000 = 24000 objects, 3456768 bytes</span> <span class="plain-syntax"> 1.1% map_data 660 objects, 3131040 bytes</span>
<span class="plain-syntax"> 0.9% kind_array 65 x 1000 = 65000 objects, 2602080 bytes</span> <span class="plain-syntax"> 0.9% kind_array 65 x 1000 = 65000 objects, 2602080 bytes</span>
<span class="plain-syntax"> 0.7% inter_schema_token 14554 objects, 2095776 bytes</span> <span class="plain-syntax"> 0.7% inter_schema_token 13492 objects, 1942848 bytes</span>
<span class="plain-syntax"> 0.6% vocabulary_entry_array 161 x 100 = 16100 objects, 1808352 bytes</span> <span class="plain-syntax"> 0.6% vocabulary_entry_array 161 x 100 = 16100 objects, 1808352 bytes</span>
<span class="plain-syntax"> 0.5% match_trie_array 10 x 1000 = 10000 objects, 1360320 bytes</span> <span class="plain-syntax"> 0.5% match_trie_array 10 x 1000 = 10000 objects, 1360320 bytes</span>
<span class="plain-syntax"> 0.4% phrase 940 objects, 1233280 bytes</span> <span class="plain-syntax"> 0.4% phrase 940 objects, 1233280 bytes</span>
<span class="plain-syntax"> 0.3% adjective_meaning 202 objects, 1001920 bytes</span> <span class="plain-syntax"> 0.3% adjective_meaning 202 objects, 1001920 bytes</span>
<span class="plain-syntax"> 0.3% excerpt_meaning 3161 objects, 986232 bytes</span> <span class="plain-syntax"> 0.3% excerpt_meaning 3102 objects, 967824 bytes</span>
<span class="plain-syntax"> 0.3% inter_name_array 20 x 1000 = 20000 objects, 960640 bytes</span> <span class="plain-syntax"> 0.3% inter_name_array 20 x 1000 = 20000 objects, 960640 bytes</span>
<span class="plain-syntax"> 0.3% inter_package 13201 objects, 950472 bytes</span> <span class="plain-syntax"> 0.3% inter_package 13201 objects, 950472 bytes</span>
<span class="plain-syntax"> 0.3% inter_schema_node 9518 objects, 913728 bytes</span> <span class="plain-syntax"> 0.3% production 3921 objects, 909672 bytes</span>
<span class="plain-syntax"> 0.3% production 3895 objects, 903640 bytes</span> <span class="plain-syntax"> 0.3% ptoken 8339 objects, 867256 bytes</span>
<span class="plain-syntax"> 0.3% ptoken 8318 objects, 865072 bytes</span> <span class="plain-syntax"> 0.3% individual_form 2564 objects, 861504 bytes</span>
<span class="plain-syntax"> 0.3% inter_symbols_table 13201 objects, 844864 bytes</span> <span class="plain-syntax"> 0.3% inter_symbols_table 13201 objects, 844864 bytes</span>
<span class="plain-syntax"> 0.3% inter_schema_node 8692 objects, 834432 bytes</span>
<span class="plain-syntax"> 0.2% dictionary 16345 objects, 784560 bytes</span> <span class="plain-syntax"> 0.2% dictionary 16345 objects, 784560 bytes</span>
<span class="plain-syntax"> 0.2% dict_entry_array 236 x 100 = 23600 objects, 762752 bytes</span> <span class="plain-syntax"> 0.2% dict_entry_array 236 x 100 = 23600 objects, 762752 bytes</span>
<span class="plain-syntax"> 0.2% package_request 7928 objects, 697664 bytes</span> <span class="plain-syntax"> 0.2% package_request 7928 objects, 697664 bytes</span>
<span class="plain-syntax"> 0.2% individual_name 2623 objects, 692472 bytes</span>
<span class="plain-syntax"> 0.2% inter_name_generator_array 16 x 1000 = 16000 objects, 640512 bytes</span> <span class="plain-syntax"> 0.2% inter_name_generator_array 16 x 1000 = 16000 objects, 640512 bytes</span>
<span class="plain-syntax"> 0.2% verb_usage 1628 objects, 573056 bytes</span> <span class="plain-syntax"> 0.2% noun_usage 2405 objects, 577200 bytes</span>
<span class="plain-syntax"> 0.1% inference_subject 781 objects, 512336 bytes</span> <span class="plain-syntax"> 0.2% verb_usage 1628 objects, 560032 bytes</span>
<span class="plain-syntax"> 0.1% local_variable_array 45 x 100 = 4500 objects, 505440 bytes</span> <span class="plain-syntax"> 0.1% local_variable_array 45 x 100 = 4500 objects, 505440 bytes</span>
<span class="plain-syntax"> 0.1% inference_subject 663 objects, 434928 bytes</span>
<span class="plain-syntax"> 0.1% rule 469 objects, 363944 bytes</span> <span class="plain-syntax"> 0.1% rule 469 objects, 363944 bytes</span>
<span class="plain-syntax"> 0.1% i6_schema_array 6 x 100 = 600 objects, 360192 bytes</span> <span class="plain-syntax"> 0.1% verb_form 386 objects, 342768 bytes</span>
<span class="plain-syntax"> 0.1% verb_form 386 objects, 339680 bytes</span> <span class="plain-syntax"> 0.1% i6_schema_array 5 x 100 = 500 objects, 300160 bytes</span>
<span class="plain-syntax"> 0.1% noun 2440 objects, 312320 bytes</span>
<span class="plain-syntax"> 0.1% scan_directory 70 objects, 288960 bytes</span> <span class="plain-syntax"> 0.1% scan_directory 70 objects, 288960 bytes</span>
<span class="plain-syntax"> 0.1% binary_predicate 439 objects, 270424 bytes</span> <span class="plain-syntax"> 0.1% noun 2381 objects, 285720 bytes</span>
<span class="plain-syntax"> ---- action_name_list_array 3 x 1000 = 3000 objects, 240096 bytes</span> <span class="plain-syntax"> ---- action_name_list_array 3 x 1000 = 3000 objects, 240096 bytes</span>
<span class="plain-syntax"> ---- binary_predicate 321 objects, 197736 bytes</span>
<span class="plain-syntax"> ---- inter_annotation_array 1 x 8192 objects, 196640 bytes</span> <span class="plain-syntax"> ---- inter_annotation_array 1 x 8192 objects, 196640 bytes</span>
<span class="plain-syntax"> ---- inference 1703 objects, 177112 bytes</span> <span class="plain-syntax"> ---- inference 1703 objects, 177112 bytes</span>
<span class="plain-syntax"> ---- linked_list_item_array 11 x 1000 = 11000 objects, 176352 bytes</span> <span class="plain-syntax"> ---- linked_list_item_array 10 x 1000 = 10000 objects, 160320 bytes</span>
<span class="plain-syntax"> ---- linguistic_stock_item 3312 objects, 158976 bytes</span>
<span class="plain-syntax"> ---- stacked_variable_owner_list_array 38 x 100 = 3800 objects, 153216 bytes</span> <span class="plain-syntax"> ---- stacked_variable_owner_list_array 38 x 100 = 3800 objects, 153216 bytes</span>
<span class="plain-syntax"> ---- action_pattern_array 6 x 100 = 600 objects, 144192 bytes</span> <span class="plain-syntax"> ---- action_pattern_array 6 x 100 = 600 objects, 144192 bytes</span>
<span class="plain-syntax"> ---- lexicon_entry 395 objects, 142200 bytes</span> <span class="plain-syntax"> ---- index_lexicon_entry 395 objects, 142200 bytes</span>
<span class="plain-syntax"> ---- nonterminal 743 objects, 136712 bytes</span> <span class="plain-syntax"> ---- nonterminal 752 objects, 138368 bytes</span>
<span class="plain-syntax"> ---- adjective_usage_array 8 x 1000 = 8000 objects, 128256 bytes</span>
<span class="plain-syntax"> ---- documentation_ref 1275 objects, 112200 bytes</span> <span class="plain-syntax"> ---- documentation_ref 1275 objects, 112200 bytes</span>
<span class="plain-syntax"> ---- hierarchy_location 731 objects, 105264 bytes</span> <span class="plain-syntax"> ---- hierarchy_location 731 objects, 105264 bytes</span>
<span class="plain-syntax"> ---- preposition_identity 273 objects, 82992 bytes</span> <span class="plain-syntax"> ---- preposition 273 objects, 87360 bytes</span>
<span class="plain-syntax"> ---- name_cluster 2577 objects, 82464 bytes</span> <span class="plain-syntax"> ---- lexical_cluster 2518 objects, 80576 bytes</span>
<span class="plain-syntax"> ---- pcalc_term_array 2 x 1000 = 2000 objects, 80064 bytes</span> <span class="plain-syntax"> ---- pcalc_term_array 2 x 1000 = 2000 objects, 80064 bytes</span>
<span class="plain-syntax"> ---- kind_variable_declaration 1652 objects, 79296 bytes</span> <span class="plain-syntax"> ---- kind_variable_declaration 1652 objects, 79296 bytes</span>
<span class="plain-syntax"> ---- inter_tree 6 objects, 78672 bytes</span> <span class="plain-syntax"> ---- inter_tree 6 objects, 78672 bytes</span>
<span class="plain-syntax"> ---- inter_schema 1627 objects, 78096 bytes</span> <span class="plain-syntax"> ---- inter_schema 1509 objects, 72432 bytes</span>
<span class="plain-syntax"> ---- spatial_data 782 objects, 75072 bytes</span>
<span class="plain-syntax"> ---- rulebook 407 objects, 71632 bytes</span> <span class="plain-syntax"> ---- rulebook 407 objects, 71632 bytes</span>
<span class="plain-syntax"> ---- kind_macro_definition 10 objects, 64400 bytes</span> <span class="plain-syntax"> ---- kind_macro_definition 10 objects, 64400 bytes</span>
<span class="plain-syntax"> ---- spatial_data 664 objects, 63744 bytes</span>
<span class="plain-syntax"> ---- booking 860 objects, 61920 bytes</span> <span class="plain-syntax"> ---- booking 860 objects, 61920 bytes</span>
<span class="plain-syntax"> ---- grammar_verb 130 objects, 57200 bytes</span> <span class="plain-syntax"> ---- grammar_verb 130 objects, 57200 bytes</span>
<span class="plain-syntax"> ---- property_permission 96 objects, 56832 bytes</span> <span class="plain-syntax"> ---- property_permission 96 objects, 56832 bytes</span>
<span class="plain-syntax"> ---- pcalc_func_array 1 x 1000 objects, 56032 bytes</span> <span class="plain-syntax"> ---- pcalc_func_array 1 x 1000 objects, 56032 bytes</span>
<span class="plain-syntax"> ---- ph_stack_frame_box 577 objects, 55392 bytes</span> <span class="plain-syntax"> ---- ph_stack_frame_box 577 objects, 55392 bytes</span>
<span class="plain-syntax"> ---- kind_constructor 75 objects, 54600 bytes</span> <span class="plain-syntax"> ---- kind_constructor 75 objects, 55200 bytes</span>
<span class="plain-syntax"> ---- text_substitution 436 objects, 48832 bytes</span> <span class="plain-syntax"> ---- text_substitution 436 objects, 48832 bytes</span>
<span class="plain-syntax"> ---- grammar_line 230 objects, 46000 bytes</span> <span class="plain-syntax"> ---- grammar_line 230 objects, 46000 bytes</span>
<span class="plain-syntax"> ---- table 7 objects, 45528 bytes</span> <span class="plain-syntax"> ---- table 7 objects, 45528 bytes</span>
<span class="plain-syntax"> ---- inter_node_list 750 objects, 42000 bytes</span> <span class="plain-syntax"> ---- inter_node_list 750 objects, 42000 bytes</span>
<span class="plain-syntax"> ---- activity_list_array 1 x 1000 objects, 40032 bytes</span> <span class="plain-syntax"> ---- activity_list_array 1 x 1000 objects, 40032 bytes</span>
<span class="plain-syntax"> ---- regions_data 778 objects, 37344 bytes</span>
<span class="plain-syntax"> ---- response_message 407 objects, 35816 bytes</span> <span class="plain-syntax"> ---- response_message 407 objects, 35816 bytes</span>
<span class="plain-syntax"> ---- production_list 618 objects, 34608 bytes</span> <span class="plain-syntax"> ---- production_list 627 objects, 35112 bytes</span>
<span class="plain-syntax"> ---- unary_predicate_array 8 x 1000 = 8000 objects, 32192 bytes</span>
<span class="plain-syntax"> ---- HTML_tag_array 1 x 1000 objects, 32032 bytes</span> <span class="plain-syntax"> ---- HTML_tag_array 1 x 1000 objects, 32032 bytes</span>
<span class="plain-syntax"> ---- regions_data 660 objects, 31680 bytes</span>
<span class="plain-syntax"> ---- property 146 objects, 31536 bytes</span> <span class="plain-syntax"> ---- property 146 objects, 31536 bytes</span>
<span class="plain-syntax"> ---- counting_data 782 objects, 31280 bytes</span>
<span class="plain-syntax"> ---- verb_sense 403 objects, 29016 bytes</span> <span class="plain-syntax"> ---- verb_sense 403 objects, 29016 bytes</span>
<span class="plain-syntax"> ---- stacked_variable_owner_array 6 x 100 = 600 objects, 28992 bytes</span> <span class="plain-syntax"> ---- stacked_variable_owner_array 6 x 100 = 600 objects, 28992 bytes</span>
<span class="plain-syntax"> ---- heading 198 objects, 28512 bytes</span> <span class="plain-syntax"> ---- heading 198 objects, 28512 bytes</span>
<span class="plain-syntax"> ---- parsing_data 782 objects, 25024 bytes</span> <span class="plain-syntax"> ---- counting_data 664 objects, 26560 bytes</span>
<span class="plain-syntax"> ---- instance 167 objects, 22712 bytes</span> <span class="plain-syntax"> ---- instance 167 objects, 22712 bytes</span>
<span class="plain-syntax"> ---- ap_optional_clause_array 1 x 400 objects, 22432 bytes</span> <span class="plain-syntax"> ---- ap_optional_clause_array 1 x 400 objects, 22432 bytes</span>
<span class="plain-syntax"> ---- parsing_data 664 objects, 21248 bytes</span>
<span class="plain-syntax"> ---- pcalc_prop_deferral 90 objects, 19440 bytes</span> <span class="plain-syntax"> ---- pcalc_prop_deferral 90 objects, 19440 bytes</span>
<span class="plain-syntax"> ---- nonlocal_variable 93 objects, 19344 bytes</span> <span class="plain-syntax"> ---- nonlocal_variable 93 objects, 19344 bytes</span>
<span class="plain-syntax"> ---- action_name 90 objects, 18720 bytes</span> <span class="plain-syntax"> ---- action_name 90 objects, 18720 bytes</span>
@ -216,17 +217,16 @@ represent less than 1/1000th of the total.
<span class="plain-syntax"> ---- stopwatch_timer 156 objects, 12480 bytes</span> <span class="plain-syntax"> ---- stopwatch_timer 156 objects, 12480 bytes</span>
<span class="plain-syntax"> ---- understanding_reference_array 2 x 100 = 200 objects, 11264 bytes</span> <span class="plain-syntax"> ---- understanding_reference_array 2 x 100 = 200 objects, 11264 bytes</span>
<span class="plain-syntax"> ---- pathname 265 objects, 10600 bytes</span> <span class="plain-syntax"> ---- pathname 265 objects, 10600 bytes</span>
<span class="plain-syntax"> ---- adjective 137 objects, 9864 bytes</span>
<span class="plain-syntax"> ---- method 177 objects, 8496 bytes</span>
<span class="plain-syntax"> ---- filename 206 objects, 8240 bytes</span> <span class="plain-syntax"> ---- filename 206 objects, 8240 bytes</span>
<span class="plain-syntax"> ---- method 169 objects, 8112 bytes</span>
<span class="plain-syntax"> ---- adjectival_phrase 137 objects, 7672 bytes</span>
<span class="plain-syntax"> ---- equation_node 68 objects, 7616 bytes</span> <span class="plain-syntax"> ---- equation_node 68 objects, 7616 bytes</span>
<span class="plain-syntax"> ---- understanding_item_array 3 x 100 = 300 objects, 7296 bytes</span> <span class="plain-syntax"> ---- understanding_item_array 3 x 100 = 300 objects, 7296 bytes</span>
<span class="plain-syntax"> ---- determiner 22 objects, 7040 bytes</span> <span class="plain-syntax"> ---- determiner 22 objects, 7216 bytes</span>
<span class="plain-syntax"> ---- stacked_variable_array 1 x 100 objects, 6432 bytes</span> <span class="plain-syntax"> ---- stacked_variable_array 1 x 100 objects, 6432 bytes</span>
<span class="plain-syntax"> ---- uniqueness_count 260 objects, 6240 bytes</span> <span class="plain-syntax"> ---- uniqueness_count 260 objects, 6240 bytes</span>
<span class="plain-syntax"> ---- verb 108 objects, 6048 bytes</span>
<span class="plain-syntax"> ---- text_literal_holder 145 objects, 5800 bytes</span> <span class="plain-syntax"> ---- text_literal_holder 145 objects, 5800 bytes</span>
<span class="plain-syntax"> ---- adjective_meaning_block 137 objects, 5480 bytes</span>
<span class="plain-syntax"> ---- verb_identity 108 objects, 5184 bytes</span>
<span class="plain-syntax"> ---- inbuild_work 78 objects, 4992 bytes</span> <span class="plain-syntax"> ---- inbuild_work 78 objects, 4992 bytes</span>
<span class="plain-syntax"> ---- kind_constructor_instance_array 2 x 100 = 200 objects, 4864 bytes</span> <span class="plain-syntax"> ---- kind_constructor_instance_array 2 x 100 = 200 objects, 4864 bytes</span>
<span class="plain-syntax"> ---- heading_tree 20 objects, 4640 bytes</span> <span class="plain-syntax"> ---- heading_tree 20 objects, 4640 bytes</span>
@ -238,9 +238,9 @@ represent less than 1/1000th of the total.
<span class="plain-syntax"> ---- activity 35 objects, 3920 bytes</span> <span class="plain-syntax"> ---- activity 35 objects, 3920 bytes</span>
<span class="plain-syntax"> ---- inbuild_edition 54 objects, 3888 bytes</span> <span class="plain-syntax"> ---- inbuild_edition 54 objects, 3888 bytes</span>
<span class="plain-syntax"> ---- inbuild_copy 35 objects, 3640 bytes</span> <span class="plain-syntax"> ---- inbuild_copy 35 objects, 3640 bytes</span>
<span class="plain-syntax"> ---- command_line_switch 41 objects, 3280 bytes</span> <span class="plain-syntax"> ---- command_line_switch 42 objects, 3360 bytes</span>
<span class="plain-syntax"> ---- kind_constructor_comparison_schema_array 1 x 100 objects, 3232 bytes</span>
<span class="plain-syntax"> ---- instance_usage_array 1 x 200 objects, 3232 bytes</span> <span class="plain-syntax"> ---- instance_usage_array 1 x 200 objects, 3232 bytes</span>
<span class="plain-syntax"> ---- kind_constructor_comparison_schema_array 1 x 100 objects, 3232 bytes</span>
<span class="plain-syntax"> ---- definition 44 objects, 3168 bytes</span> <span class="plain-syntax"> ---- definition 44 objects, 3168 bytes</span>
<span class="plain-syntax"> ---- compatibility_specification 66 objects, 3168 bytes</span> <span class="plain-syntax"> ---- compatibility_specification 66 objects, 3168 bytes</span>
<span class="plain-syntax"> ---- inform_extension 19 objects, 3040 bytes</span> <span class="plain-syntax"> ---- inform_extension 19 objects, 3040 bytes</span>
@ -250,22 +250,22 @@ represent less than 1/1000th of the total.
<span class="plain-syntax"> ---- kind_constructor_casting_rule_array 1 x 100 objects, 2432 bytes</span> <span class="plain-syntax"> ---- kind_constructor_casting_rule_array 1 x 100 objects, 2432 bytes</span>
<span class="plain-syntax"> ---- equation_symbol 30 objects, 2400 bytes</span> <span class="plain-syntax"> ---- equation_symbol 30 objects, 2400 bytes</span>
<span class="plain-syntax"> ---- semver_range 22 objects, 2288 bytes</span> <span class="plain-syntax"> ---- semver_range 22 objects, 2288 bytes</span>
<span class="plain-syntax"> ---- table_contribution_array 1 x 100 objects, 1632 bytes</span> <span class="plain-syntax"> ---- method_set 56 objects, 1792 bytes</span>
<span class="plain-syntax"> ---- plugin_call_array 1 x 100 objects, 1632 bytes</span> <span class="plain-syntax"> ---- plugin_call_array 1 x 100 objects, 1632 bytes</span>
<span class="plain-syntax"> ---- activity_crossref_array 1 x 100 objects, 1632 bytes</span> <span class="plain-syntax"> ---- activity_crossref_array 1 x 100 objects, 1632 bytes</span>
<span class="plain-syntax"> ---- table_contribution_array 1 x 100 objects, 1632 bytes</span>
<span class="plain-syntax"> ---- use_option 29 objects, 1624 bytes</span> <span class="plain-syntax"> ---- use_option 29 objects, 1624 bytes</span>
<span class="plain-syntax"> ---- kind_interaction 39 objects, 1560 bytes</span> <span class="plain-syntax"> ---- kind_interaction 39 objects, 1560 bytes</span>
<span class="plain-syntax"> ---- method_set 48 objects, 1536 bytes</span>
<span class="plain-syntax"> ---- inter_annotation_form 37 objects, 1480 bytes</span> <span class="plain-syntax"> ---- inter_annotation_form 37 objects, 1480 bytes</span>
<span class="plain-syntax"> ---- pipeline_step 12 objects, 1440 bytes</span> <span class="plain-syntax"> ---- pipeline_step 12 objects, 1440 bytes</span>
<span class="plain-syntax"> ---- noun_filter_token 22 objects, 1408 bytes</span> <span class="plain-syntax"> ---- noun_filter_token 22 objects, 1408 bytes</span>
<span class="plain-syntax"> ---- scene 1 object, 1344 bytes</span> <span class="plain-syntax"> ---- scene 1 object, 1344 bytes</span>
<span class="plain-syntax"> ---- special_meaning_holder 33 objects, 1320 bytes</span> <span class="plain-syntax"> ---- special_meaning_holder 33 objects, 1320 bytes</span>
<span class="plain-syntax"> ---- build_script 40 objects, 1280 bytes</span>
<span class="plain-syntax"> ---- constant_phrase 20 objects, 1280 bytes</span> <span class="plain-syntax"> ---- constant_phrase 20 objects, 1280 bytes</span>
<span class="plain-syntax"> ---- build_script 40 objects, 1280 bytes</span>
<span class="plain-syntax"> ---- invocation_options_array 1 x 100 objects, 1224 bytes</span> <span class="plain-syntax"> ---- invocation_options_array 1 x 100 objects, 1224 bytes</span>
<span class="plain-syntax"> ---- hierarchy_metadatum 15 objects, 1200 bytes</span> <span class="plain-syntax"> ---- hierarchy_metadatum 15 objects, 1200 bytes</span>
<span class="plain-syntax"> ---- quantifier 16 objects, 1152 bytes</span> <span class="plain-syntax"> ---- quantifier 16 objects, 1024 bytes</span>
<span class="plain-syntax"> ---- table_column 16 objects, 896 bytes</span> <span class="plain-syntax"> ---- table_column 16 objects, 896 bytes</span>
<span class="plain-syntax"> ---- inbuild_requirement 22 objects, 880 bytes</span> <span class="plain-syntax"> ---- inbuild_requirement 22 objects, 880 bytes</span>
<span class="plain-syntax"> ---- code_generation 1 object, 864 bytes</span> <span class="plain-syntax"> ---- code_generation 1 object, 864 bytes</span>
@ -285,53 +285,57 @@ represent less than 1/1000th of the total.
<span class="plain-syntax"> ---- I6T_intervention 8 objects, 640 bytes</span> <span class="plain-syntax"> ---- I6T_intervention 8 objects, 640 bytes</span>
<span class="plain-syntax"> ---- relation_guard 5 objects, 640 bytes</span> <span class="plain-syntax"> ---- relation_guard 5 objects, 640 bytes</span>
<span class="plain-syntax"> ---- nascent_array 7 objects, 616 bytes</span> <span class="plain-syntax"> ---- nascent_array 7 objects, 616 bytes</span>
<span class="plain-syntax"> ---- inbuild_search_result 15 objects, 600 bytes</span>
<span class="plain-syntax"> ---- named_rulebook_outcome 15 objects, 600 bytes</span> <span class="plain-syntax"> ---- named_rulebook_outcome 15 objects, 600 bytes</span>
<span class="plain-syntax"> ---- inbuild_search_result 15 objects, 600 bytes</span>
<span class="plain-syntax"> ---- label_namespace 10 objects, 560 bytes</span> <span class="plain-syntax"> ---- label_namespace 10 objects, 560 bytes</span>
<span class="plain-syntax"> ---- inform_kit 5 objects, 520 bytes</span> <span class="plain-syntax"> ---- inform_kit 5 objects, 520 bytes</span>
<span class="plain-syntax"> ---- equation 4 objects, 416 bytes</span> <span class="plain-syntax"> ---- equation 4 objects, 416 bytes</span>
<span class="plain-syntax"> ---- i6_memory_setting 13 objects, 416 bytes</span> <span class="plain-syntax"> ---- i6_memory_setting 13 objects, 416 bytes</span>
<span class="plain-syntax"> ---- module_package 10 objects, 400 bytes</span>
<span class="plain-syntax"> ---- dval_written 10 objects, 400 bytes</span> <span class="plain-syntax"> ---- dval_written 10 objects, 400 bytes</span>
<span class="plain-syntax"> ---- module_package 10 objects, 400 bytes</span>
<span class="plain-syntax"> ---- source_file 5 objects, 360 bytes</span> <span class="plain-syntax"> ---- source_file 5 objects, 360 bytes</span>
<span class="plain-syntax"> ---- inbuild_genre 7 objects, 336 bytes</span> <span class="plain-syntax"> ---- inbuild_genre 7 objects, 336 bytes</span>
<span class="plain-syntax"> ---- door_dir_notice 5 objects, 320 bytes</span> <span class="plain-syntax"> ---- door_dir_notice 5 objects, 320 bytes</span>
<span class="plain-syntax"> ---- grammatical_category 8 objects, 320 bytes</span>
<span class="plain-syntax"> ---- build_step 4 objects, 288 bytes</span> <span class="plain-syntax"> ---- build_step 4 objects, 288 bytes</span>
<span class="plain-syntax"> ---- door_to_notice 5 objects, 280 bytes</span> <span class="plain-syntax"> ---- door_to_notice 5 objects, 280 bytes</span>
<span class="plain-syntax"> ---- inform_pipeline 4 objects, 256 bytes</span> <span class="plain-syntax"> ---- inform_pipeline 4 objects, 256 bytes</span>
<span class="plain-syntax"> ---- verb_usage_tier 5 objects, 240 bytes</span> <span class="plain-syntax"> ---- verb_usage_tier 5 objects, 240 bytes</span>
<span class="plain-syntax"> ---- test_scenario 1 object, 208 bytes</span> <span class="plain-syntax"> ---- test_scenario 1 object, 208 bytes</span>
<span class="plain-syntax"> ---- build_skill 5 objects, 200 bytes</span>
<span class="plain-syntax"> ---- compilation_module 5 objects, 200 bytes</span> <span class="plain-syntax"> ---- compilation_module 5 objects, 200 bytes</span>
<span class="plain-syntax"> ---- kit_dependency 4 objects, 192 bytes</span> <span class="plain-syntax"> ---- build_skill 5 objects, 200 bytes</span>
<span class="plain-syntax"> ---- plural_dictionary_entry 4 objects, 192 bytes</span> <span class="plain-syntax"> ---- plural_dictionary_entry 4 objects, 192 bytes</span>
<span class="plain-syntax"> ---- kit_dependency 4 objects, 192 bytes</span>
<span class="plain-syntax"> ---- inform_project 1 object, 176 bytes</span> <span class="plain-syntax"> ---- inform_project 1 object, 176 bytes</span>
<span class="plain-syntax"> ---- kind_template_obligation 4 objects, 160 bytes</span>
<span class="plain-syntax"> ---- link_instruction 4 objects, 160 bytes</span>
<span class="plain-syntax"> ---- inter_architecture 4 objects, 160 bytes</span>
<span class="plain-syntax"> ---- pointer_allocation 2 objects, 160 bytes</span> <span class="plain-syntax"> ---- pointer_allocation 2 objects, 160 bytes</span>
<span class="plain-syntax"> ---- code_generation_target 4 objects, 160 bytes</span> <span class="plain-syntax"> ---- code_generation_target 4 objects, 160 bytes</span>
<span class="plain-syntax"> ---- codegen_pipeline 1 object, 128 bytes</span> <span class="plain-syntax"> ---- inter_architecture 4 objects, 160 bytes</span>
<span class="plain-syntax"> ---- kind_template_obligation 4 objects, 160 bytes</span>
<span class="plain-syntax"> ---- link_instruction 4 objects, 160 bytes</span>
<span class="plain-syntax"> ---- element_activation 4 objects, 128 bytes</span> <span class="plain-syntax"> ---- element_activation 4 objects, 128 bytes</span>
<span class="plain-syntax"> ---- codegen_pipeline 1 object, 128 bytes</span>
<span class="plain-syntax"> ---- inbuild_nest 3 objects, 120 bytes</span> <span class="plain-syntax"> ---- inbuild_nest 3 objects, 120 bytes</span>
<span class="plain-syntax"> ---- pronoun 3 objects, 120 bytes</span>
<span class="plain-syntax"> ---- inform_kit_ittt 2 objects, 96 bytes</span> <span class="plain-syntax"> ---- inform_kit_ittt 2 objects, 96 bytes</span>
<span class="plain-syntax"> ---- compile_task_data 1 object, 80 bytes</span>
<span class="plain-syntax"> ---- list_together_routine 2 objects, 80 bytes</span> <span class="plain-syntax"> ---- list_together_routine 2 objects, 80 bytes</span>
<span class="plain-syntax"> ---- article 2 objects, 80 bytes</span>
<span class="plain-syntax"> ---- compile_task_data 1 object, 80 bytes</span>
<span class="plain-syntax"> ---- inter_warehouse 1 object, 56 bytes</span> <span class="plain-syntax"> ---- inter_warehouse 1 object, 56 bytes</span>
<span class="plain-syntax"> ---- build_methodology 1 object, 56 bytes</span> <span class="plain-syntax"> ---- build_methodology 1 object, 56 bytes</span>
<span class="plain-syntax"> ---- HTML_file_state 1 object, 48 bytes</span>
<span class="plain-syntax"> ---- blorb_figure 1 object, 48 bytes</span> <span class="plain-syntax"> ---- blorb_figure 1 object, 48 bytes</span>
<span class="plain-syntax"> ---- loop_over_scope 1 object, 40 bytes</span> <span class="plain-syntax"> ---- HTML_file_state 1 object, 48 bytes</span>
<span class="plain-syntax"> ---- kind_template_definition 1 object, 40 bytes</span> <span class="plain-syntax"> ---- kind_template_definition 1 object, 40 bytes</span>
<span class="plain-syntax"> ---- parse_name_notice 1 object, 40 bytes</span> <span class="plain-syntax"> ---- parse_name_notice 1 object, 40 bytes</span>
<span class="plain-syntax"> ---- loop_over_scope 1 object, 40 bytes</span>
<span class="plain-syntax">37.5% was used for memory not allocated for objects:</span> <span class="plain-syntax">37.5% was used for memory not allocated for objects:</span>
<span class="plain-syntax"> 16.0% text stream storage 42037484 bytes in 265078 claims</span> <span class="plain-syntax"> 15.9% text stream storage 41849780 bytes in 263291 claims</span>
<span class="plain-syntax"> 3.5% dictionary storage 9265152 bytes in 16345 claims</span> <span class="plain-syntax"> 3.5% dictionary storage 9265152 bytes in 16345 claims</span>
<span class="plain-syntax"> ---- sorting 1112 bytes in 3 claims</span> <span class="plain-syntax"> ---- sorting 1112 bytes in 3 claims</span>
<span class="plain-syntax"> 2.7% source text 7200000 bytes in 3 claims</span> <span class="plain-syntax"> 2.7% source text 7200000 bytes in 3 claims</span>
<span class="plain-syntax"> 4.1% source text details 10800000 bytes in 2 claims</span> <span class="plain-syntax"> 4.1% source text details 10800000 bytes in 2 claims</span>
<span class="plain-syntax"> ---- linguistic stock array 81920 bytes in 2 claims</span>
<span class="plain-syntax"> 0.8% inter symbols storage 2276992 bytes in 13911 claims</span> <span class="plain-syntax"> 0.8% inter symbols storage 2276992 bytes in 13911 claims</span>
<span class="plain-syntax"> 6.4% inter bytecode storage 16802820 bytes in 14 claims</span> <span class="plain-syntax"> 6.4% inter bytecode storage 16802820 bytes in 14 claims</span>
<span class="plain-syntax"> 3.3% inter links storage 8750208 bytes in 246 claims</span> <span class="plain-syntax"> 3.3% inter links storage 8750208 bytes in 246 claims</span>
@ -342,7 +346,7 @@ represent less than 1/1000th of the total.
<span class="plain-syntax"> ---- emitter array storage 14368 bytes in 8 claims</span> <span class="plain-syntax"> ---- emitter array storage 14368 bytes in 8 claims</span>
<span class="plain-syntax"> ---- code generation workspace for objects 9200 bytes in 9 claims</span> <span class="plain-syntax"> ---- code generation workspace for objects 9200 bytes in 9 claims</span>
<span class="plain-syntax">19.9% was overhead - 52468856 bytes = 51239K = 50 MB</span> <span class="plain-syntax">19.9% was overhead - 52335680 bytes = 51109K = 49 MB</span>
</pre> </pre>
<p class="commentary firstcommentary"><a id="SP4"></a><b>&#167;4. Preform grammar. </b>The full annotated description of the Preform grammar (see <a href="../words-module/4-ap.html" class="internal">About Preform (in words)</a>), <p class="commentary firstcommentary"><a id="SP4"></a><b>&#167;4. Preform grammar. </b>The full annotated description of the Preform grammar (see <a href="../words-module/4-ap.html" class="internal">About Preform (in words)</a>),
with optimisation details and hit/miss statistics added, is also long: it's with optimisation details and hit/miss statistics added, is also long: it's
@ -351,14 +355,14 @@ sample, showing the nonterminal used to parse literals in Inform 7 source text:
</p> </p>
<pre class="undisplayed-code all-displayed-code code-font"> <pre class="undisplayed-code all-displayed-code code-font">
<span class="plain-syntax">&lt;s-literal&gt; hits 2097/23834 nti 23 constraint (none) extremes [1, infinity)</span> <span class="plain-syntax">&lt;s-literal&gt; hits 2097/23834 nti 27 constraint (none) extremes [1, infinity)</span>
<span class="plain-syntax"> English:</span> <span class="plain-syntax"> English:</span>
<span class="plain-syntax"> (@1)&lt;cardinal-number&gt;=1 </span> <span class="plain-syntax"> (@1)&lt;cardinal-number&gt;=1 </span>
<span class="plain-syntax"> (hits 171/171) (matched: '100') constraint CS = {r0} extremes [1, 1]</span> <span class="plain-syntax"> (hits 171/171) (matched: '100') constraint CS = {r0} extremes [1, 1]</span>
<span class="plain-syntax"> (@1)minus (@2)&lt;cardinal-number&gt;=1 </span> <span class="plain-syntax"> (@1)minus (@2)&lt;cardinal-number&gt;=1 </span>
<span class="plain-syntax"> (hits 0/1481) constraint DS = {23} extremes [2, 2]</span> <span class="plain-syntax"> (hits 0/1395) constraint DS = {27} extremes [2, 2]</span>
<span class="plain-syntax"> (@1)&lt;quoted-text&gt;=1 (@2)( (@3)&lt;response-letter&gt;=2 (@4)) </span> <span class="plain-syntax"> (@1)&lt;quoted-text&gt;=1 (@2)( (@3)&lt;response-letter&gt;=2 (@4)) </span>
<span class="plain-syntax"> (hits 273/728) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {23} extremes [4, 4]</span> <span class="plain-syntax"> (hits 273/802) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {27} extremes [4, 4]</span>
<span class="plain-syntax"> (@1)&lt;quoted-text&gt;=1 </span> <span class="plain-syntax"> (@1)&lt;quoted-text&gt;=1 </span>
<span class="plain-syntax"> (hits 1564/5548) (matched: 'Represents geographical locations, both indoor</span> <span class="plain-syntax"> (hits 1564/5548) (matched: 'Represents geographical locations, both indoor</span>
<span class="plain-syntax"> and outdoor, which are not necessarily areas in a building. A player in one</span> <span class="plain-syntax"> and outdoor, which are not necessarily areas in a building. A player in one</span>
@ -367,13 +371,13 @@ sample, showing the nonterminal used to parse literals in Inform 7 source text:
<span class="plain-syntax"> &lt;s-literal-real-number&gt;=1 </span> <span class="plain-syntax"> &lt;s-literal-real-number&gt;=1 </span>
<span class="plain-syntax"> (hits 11/9909) (matched: 'plus infinity') constraint (none) extremes [1, infinity)</span> <span class="plain-syntax"> (hits 11/9909) (matched: 'plus infinity') constraint (none) extremes [1, infinity)</span>
<span class="plain-syntax"> (@1)&lt;s-literal-truth-state&gt;=1 </span> <span class="plain-syntax"> (@1)&lt;s-literal-truth-state&gt;=1 </span>
<span class="plain-syntax"> (hits 78/231) (matched: 'false') constraint CS = {17} extremes [1, 1]</span> <span class="plain-syntax"> (hits 78/228) (matched: 'false') constraint CS = {21} extremes [1, 1]</span>
<span class="plain-syntax"> &lt;s-literal-list&gt;=1 </span> <span class="plain-syntax"> &lt;s-literal-list&gt;=1 </span>
<span class="plain-syntax"> (hits 0/3241) constraint DS = {19} extremes [2, infinity)</span> <span class="plain-syntax"> (hits 0/3681) constraint DS = {23} extremes [2, infinity)</span>
<span class="plain-syntax"> (@1)unicode &lt;s-unicode-character&gt;=1 </span> <span class="plain-syntax"> (@1)unicode &lt;s-unicode-character&gt;=1 </span>
<span class="plain-syntax"> (hits 0/3299) constraint DS = {23} extremes [2, infinity)</span> <span class="plain-syntax"> (hits 0/3352) constraint DS = {27} extremes [2, infinity)</span>
<span class="plain-syntax"> &lt;s-literal-time&gt;=1 </span> <span class="plain-syntax"> &lt;s-literal-time&gt;=1 </span>
<span class="plain-syntax"> (hits 0/3457) constraint DW = {20, 21, 22} extremes [2, 5]</span> <span class="plain-syntax"> (hits 0/3474) constraint DW = {24, 25, 26} extremes [2, 5]</span>
<span class="plain-syntax"> &lt;s-literal-unit-notation&gt;=1 </span> <span class="plain-syntax"> &lt;s-literal-unit-notation&gt;=1 </span>
<span class="plain-syntax"> (hits 0/9820) constraint (none) extremes [1, infinity)</span> <span class="plain-syntax"> (hits 0/9820) constraint (none) extremes [1, infinity)</span>
</pre> </pre>
@ -385,7 +389,7 @@ sample, showing the nonterminal used to parse literals in Inform 7 source text:
<a href="../../inform7/Downloads/preform-diagnostics.txt" download> <a href="../../inform7/Downloads/preform-diagnostics.txt" download>
<button class="download-button"> <button class="download-button">
<img src="../docs-assets/download.png" alt="download icon" height=16 width=16> <img src="../docs-assets/download.png" alt="download icon" height=16 width=16>
Download <b>preform-diagnostics.txt</b> (Preform diagnostics file, 394.1kB) Download <b>preform-diagnostics.txt</b> (Preform diagnostics file, 397.3kB)
</button> </button>
</a> </a>
</p> </p>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -63,6 +63,7 @@ function togglePopup(material_id) {
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP14" class="function-link"><span class="function-syntax">CommandLine::declare_heading</span></a><span class="plain-syntax">(</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP14" class="function-link"><span class="function-syntax">CommandLine::declare_heading</span></a><span class="plain-syntax">(</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="string-syntax">"[[Purpose]]\n\n"</span> <span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="string-syntax">"[[Purpose]]\n\n"</span>

View file

@ -62,6 +62,7 @@ function togglePopup(material_id) {
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_2" class="named-paragraph-link"><span class="named-paragraph">Read the command line</span><span class="named-paragraph-number">1.2</span></a></span><span class="plain-syntax">;</span> <span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="1-mn.html#SP1_2" class="named-paragraph-link"><span class="named-paragraph">Read the command line</span><span class="named-paragraph-number">1.2</span></a></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">from_folder</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">from_folder</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">to_folder</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</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">to_folder</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">)</span>

View file

@ -123,6 +123,7 @@ also done with a pipeline.
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">(); </span><span class="comment-syntax"> must be started first</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">(); </span><span class="comment-syntax"> must be started first</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../arch-module/1-am.html#SP3" class="function-link"><span class="function-syntax">ArchModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../arch-module/1-am.html#SP3" class="function-link"><span class="function-syntax">ArchModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../bytecode-module/1-bm.html#SP3" class="function-link"><span class="function-syntax">BytecodeModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../bytecode-module/1-bm.html#SP3" class="function-link"><span class="function-syntax">BytecodeModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../building-module/1-bm2.html#SP4" class="function-link"><span class="function-syntax">BuildingModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../building-module/1-bm2.html#SP4" class="function-link"><span class="function-syntax">BuildingModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -55,6 +55,7 @@
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../inflections-module/1-im.html#SP3" class="function-link"><span class="function-syntax">InflectionsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../inflections-module/1-im.html#SP3" class="function-link"><span class="function-syntax">InflectionsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -53,6 +53,7 @@
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../problems-module/1-pm.html#SP3" class="function-link"><span class="function-syntax">ProblemsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../problems-module/1-pm.html#SP3" class="function-link"><span class="function-syntax">ProblemsModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -53,6 +53,7 @@
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../syntax-module/1-sm.html#SP3" class="function-link"><span class="function-syntax">SyntaxModule::start</span></a><span class="plain-syntax">();</span>

View file

@ -54,6 +54,7 @@
<pre class="displayed-code all-displayed-code code-font"> <pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span> <span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">main</span><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="reserved-syntax">char</span><span class="plain-syntax"> **</span><span class="identifier-syntax">argv</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/1-fm.html#SP8" class="function-link"><span class="function-syntax">Foundation::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP8" class="function-link"><span class="function-syntax">CommandLine::set_locale</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">argc</span><span class="plain-syntax">, </span><span class="identifier-syntax">argv</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span> <span class="plain-syntax"> </span><a href="../words-module/1-wm.html#SP3" class="function-link"><span class="function-syntax">WordsModule::start</span></a><span class="plain-syntax">();</span>
<span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP14" class="function-link"><span class="function-syntax">CommandLine::declare_heading</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">L</span><span class="string-syntax">"inexample: a tool for testing foundation facilities\n"</span><span class="plain-syntax">);</span> <span class="plain-syntax"> </span><a href="../../../inweb/docs/foundation-module/3-cla.html#SP14" class="function-link"><span class="function-syntax">CommandLine::declare_heading</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">L</span><span class="string-syntax">"inexample: a tool for testing foundation facilities\n"</span><span class="plain-syntax">);</span>

View file

@ -55,6 +55,7 @@ filename *blorb_filename = NULL;
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
Basics::register_mreasons(); Basics::register_mreasons();
blurb_filename = Filenames::in(NULL, I"Release.blurb"); blurb_filename = Filenames::in(NULL, I"Release.blurb");
blorb_filename = Filenames::in(NULL, I"story.zblorb"); blorb_filename = Filenames::in(NULL, I"story.zblorb");

View file

@ -39,6 +39,7 @@ int main(int argc, char **argv) {
@<Start up the modules@> = @<Start up the modules@> =
Foundation::start(); /* must be started first */ Foundation::start(); /* must be started first */
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
SyntaxModule::start(); SyntaxModule::start();
HTMLModule::start(); HTMLModule::start();

View file

@ -9,8 +9,9 @@ definition we need to make is:
@d PROGRAM_NAME "indoc" @d PROGRAM_NAME "indoc"
= =
void Basics::start(void) { void Basics::start(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
@<Declare the debugging log aspects@>; @<Declare the debugging log aspects@>;
} }

View file

@ -15,7 +15,7 @@ int no_volumes = 0;
int no_examples = 0; int no_examples = 0;
int main(int argc, char **argv) { int main(int argc, char **argv) {
Basics::start(); Basics::start(argc, argv);
@<Start up indoc@>; @<Start up indoc@>;
@<Make a first-pass scan of the rawtext@>; @<Make a first-pass scan of the rawtext@>;
@<Render the rawtext as documentation@>; @<Render the rawtext as documentation@>;

View file

@ -35,6 +35,7 @@ int Main::deputy(int argc, char *argv[]) {
@<Start up the modules@> = @<Start up the modules@> =
Foundation::start(); /* must be started first */ Foundation::start(); /* must be started first */
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
InflectionsModule::start(); InflectionsModule::start();
SyntaxModule::start(); SyntaxModule::start();

View file

@ -1,6 +1,6 @@
Total memory consumption was 256243K = 250 MB Total memory consumption was 256243K = 250 MB
62.4% was used for 1347148 objects, in 270288 frames in 200 x 800K = 160000K = 156 MB: 62.4% was used for 1347149 objects, in 270289 frames in 200 x 800K = 160000K = 156 MB:
9.8% inter_tree_node_array 36 x 8192 = 294912 objects, 25953408 bytes 9.8% inter_tree_node_array 36 x 8192 = 294912 objects, 25953408 bytes
5.5% text_stream_array 2569 x 100 = 256900 objects, 14468608 bytes 5.5% text_stream_array 2569 x 100 = 256900 objects, 14468608 bytes
@ -116,7 +116,7 @@ Total memory consumption was 256243K = 250 MB
---- activity 35 objects, 3920 bytes ---- activity 35 objects, 3920 bytes
---- inbuild_edition 54 objects, 3888 bytes ---- inbuild_edition 54 objects, 3888 bytes
---- inbuild_copy 35 objects, 3640 bytes ---- inbuild_copy 35 objects, 3640 bytes
---- command_line_switch 41 objects, 3280 bytes ---- command_line_switch 42 objects, 3360 bytes
---- instance_usage_array 1 x 200 objects, 3232 bytes ---- instance_usage_array 1 x 200 objects, 3232 bytes
---- kind_constructor_comparison_schema_array 1 x 100 objects, 3232 bytes ---- kind_constructor_comparison_schema_array 1 x 100 objects, 3232 bytes
---- definition 44 objects, 3168 bytes ---- definition 44 objects, 3168 bytes
@ -208,7 +208,7 @@ Total memory consumption was 256243K = 250 MB
37.5% was used for memory not allocated for objects: 37.5% was used for memory not allocated for objects:
15.9% text stream storage 41849192 bytes in 263287 claims 15.9% text stream storage 41849780 bytes in 263291 claims
3.5% dictionary storage 9265152 bytes in 16345 claims 3.5% dictionary storage 9265152 bytes in 16345 claims
---- sorting 1112 bytes in 3 claims ---- sorting 1112 bytes in 3 claims
2.7% source text 7200000 bytes in 3 claims 2.7% source text 7200000 bytes in 3 claims
@ -224,5 +224,5 @@ Total memory consumption was 256243K = 250 MB
---- emitter array storage 14368 bytes in 8 claims ---- emitter array storage 14368 bytes in 8 claims
---- code generation workspace for objects 9200 bytes in 9 claims ---- code generation workspace for objects 9200 bytes in 9 claims
19.9% was overhead - 52335760 bytes = 51109K = 49 MB 19.9% was overhead - 52335680 bytes = 51109K = 49 MB

View file

@ -1,14 +1,14 @@
100.0% in inform7 run 100.0% in inform7 run
67.8% in compilation to Inter 67.4% in compilation to Inter
29.0% in //Phrases::Manager::compile_first_block// 27.5% in //Phrases::Manager::compile_first_block//
8.1% in //Phrases::Manager::compile_as_needed// 8.5% in //Phrases::Manager::compile_as_needed//
6.7% in //Strings::compile_responses// 6.8% in //Strings::compile_responses//
5.6% in //World::Compile::compile// 5.7% in //World::Compile::compile//
3.0% in //Assertions::Traverse::traverse1// 3.1% in //Assertions::Traverse::traverse1//
2.9% in //Sentences::VPs::traverse// 2.9% in //Sentences::VPs::traverse//
1.9% in //Phrases::Manager::RulePrintingRule_routine// 2.2% in //Phrases::Manager::RulePrintingRule_routine//
1.9% in //Phrases::Manager::rulebooks_array// 1.8% in //Phrases::Manager::rulebooks_array//
1.0% in //NewVerbs::ConjugateVerb// 1.1% in //NewVerbs::ConjugateVerb//
0.7% in //Phrases::Manager::parse_rule_parameters// 0.7% in //Phrases::Manager::parse_rule_parameters//
0.7% in //Phrases::Manager::traverse// 0.7% in //Phrases::Manager::traverse//
0.3% in //Phrases::Manager::compile_rulebooks// 0.3% in //Phrases::Manager::compile_rulebooks//
@ -19,8 +19,8 @@
0.1% in //Sentences::RuleSubtrees::register_recently_lexed_phrases// 0.1% in //Sentences::RuleSubtrees::register_recently_lexed_phrases//
0.1% in //Task::load_types// 0.1% in //Task::load_types//
0.1% in //World::complete// 0.1% in //World::complete//
3.8% not specifically accounted for 3.9% not specifically accounted for
29.7% in running Inter pipeline 30.1% in running Inter pipeline
9.8% in step preparation 9.8% in step preparation
9.6% in inter step 2/12: link 9.6% in inter step 2/12: link
7.0% in inter step 12/12: generate inform6 -> auto.inf 7.0% in inter step 12/12: generate inform6 -> auto.inf
@ -31,6 +31,6 @@
0.1% in inter step 6/12: assimilate 0.1% in inter step 6/12: assimilate
0.1% in inter step 7/12: resolve-external-symbols 0.1% in inter step 7/12: resolve-external-symbols
0.1% in inter step 8/12: inspect-plugs 0.1% in inter step 8/12: inspect-plugs
1.8% not specifically accounted for 2.1% not specifically accounted for
1.9% in supervisor 2.0% in supervisor
0.4% not specifically accounted for 0.4% not specifically accounted for

View file

@ -16,7 +16,8 @@ int return_happy = TRUE, silence_mode = FALSE, verbose_mode = FALSE;
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
CommandLine::declare_heading( CommandLine::declare_heading(
L"[[Purpose]]\n\n" L"[[Purpose]]\n\n"
L"usage: inpolicy [options]\n"); L"usage: inpolicy [options]\n");

View file

@ -15,6 +15,7 @@ int font_setting = TRUE;
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
@<Read the command line@>; @<Read the command line@>;
if (from_folder) { if (from_folder) {
if (to_folder == NULL) if (to_folder == NULL)

View file

@ -54,6 +54,7 @@ int main(int argc, char **argv) {
@<Start up the modules@> = @<Start up the modules@> =
Foundation::start(); /* must be started first */ Foundation::start(); /* must be started first */
CommandLine::set_locale(argc, argv);
ArchModule::start(); ArchModule::start();
BytecodeModule::start(); BytecodeModule::start();
BuildingModule::start(); BuildingModule::start();

View file

@ -19,6 +19,7 @@ kind *K_value = NULL;
= =
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
BuildingModule::start(); BuildingModule::start();
BytecodeModule::start(); BytecodeModule::start();

View file

@ -11,6 +11,7 @@ What shall we test?
= =
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
ArchModule::start(); ArchModule::start();
CommandLine::declare_heading(L"inexample: a tool for testing foundation facilities\n"); CommandLine::declare_heading(L"inexample: a tool for testing foundation facilities\n");

View file

@ -16,6 +16,7 @@ What shall we test?
= =
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
InflectionsModule::start(); InflectionsModule::start();

View file

@ -14,6 +14,7 @@ What shall we test?
= =
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
InflectionsModule::start(); InflectionsModule::start();
SyntaxModule::start(); SyntaxModule::start();

View file

@ -11,6 +11,7 @@ What shall we test?
= =
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
SyntaxModule::start(); SyntaxModule::start();
ProblemsModule::start(); ProblemsModule::start();

View file

@ -11,6 +11,7 @@ What shall we test?
= =
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
SyntaxModule::start(); SyntaxModule::start();

View file

@ -12,6 +12,7 @@ What shall we test?
= =
int main(int argc, char **argv) { int main(int argc, char **argv) {
Foundation::start(); Foundation::start();
CommandLine::set_locale(argc, argv);
WordsModule::start(); WordsModule::start();
CommandLine::declare_heading(L"inexample: a tool for testing foundation facilities\n"); CommandLine::declare_heading(L"inexample: a tool for testing foundation facilities\n");