mirror of
https://github.com/ganelson/inform.git
synced 2024-06-16 23:30:44 +03:00
Inbuild now ignores candidate extensions whose filenames begin with "."
This commit is contained in:
parent
9bffe2a889
commit
fce5a28aef
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'BlockValues Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>BlockValues Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>BlockValues Template</b></li></ul></div>
|
||||
<p class="purpose">Routines for copying, comparing, creating and destroying block values, and for reading and writing them as if they were arrays.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-blc.html#SP1">§1. Overview</a></li><li><a href="S-blc.html#SP2">§2. Short Block Format</a></li><li><a href="S-blc.html#SP3">§3. Long Block Access</a></li><li><a href="S-blc.html#SP4">§4. Weak Kind</a></li><li><a href="S-blc.html#SP5">§5. Reference counting</a></li><li><a href="S-blc.html#SP6">§6. Changing Reference Counts</a></li><li><a href="S-blc.html#SP7">§7. Long Block Capacity</a></li><li><a href="S-blc.html#SP8">§8. Long Block Array Access</a></li><li><a href="S-blc.html#SP9">§9. First Zero Entry</a></li><li><a href="S-blc.html#SP10">§10. Mass Copy Entries</a></li><li><a href="S-blc.html#SP11">§11. Mass Copy From Array</a></li><li><a href="S-blc.html#SP12">§12. KOVS Routines</a></li><li><a href="S-blc.html#SP13">§13. Creation</a></li><li><a href="S-blc.html#SP14">§14. Errors</a></li><li><a href="S-blc.html#SP15">§15. Short Block Allocation</a></li><li><a href="S-blc.html#SP16">§16. Block Values On Stack</a></li><li><a href="S-blc.html#SP17">§17. Freeing</a></li><li><a href="S-blc.html#SP18">§18. Quick Copy</a></li><li><a href="S-blc.html#SP19">§19. Short Block Copy</a></li><li><a href="S-blc.html#SP20">§20. Slow Copy</a></li><li><a href="S-blc.html#SP21">§21. Copy</a></li><li><a href="S-blc.html#SP22">§22. Destruction</a></li><li><a href="S-blc.html#SP23">§23. Recycling</a></li><li><a href="S-blc.html#SP24">§24. Mutability</a></li><li><a href="S-blc.html#SP25">§25. Casting</a></li><li><a href="S-blc.html#SP26">§26. Comparison</a></li><li><a href="S-blc.html#SP27">§27. Hashing</a></li><li><a href="S-blc.html#SP28">§28. Serialisation</a></li><li><a href="S-blc.html#SP29">§29. Debugging</a></li><li><a href="S-blc.html#SP30">§30. Printing Memory Addresses</a></li><li><a href="S-blc.html#SP31">§31. Hexadecimal Printing</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Char Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Char Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Char Template</b></li></ul></div>
|
||||
<p class="purpose">To decide whether letters are upper or lower case, and convert between the two.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-chr.html#SP1">§1. Char Is Of Case</a></li><li><a href="S-chr.html#SP2">§2. Char To Case</a></li><li><a href="S-chr.html#SP3">§3. Reversing Case</a></li><li><a href="S-chr.html#SP4">§4. DigitToValue</a></li><li><a href="S-chr.html#SP5">§5. Testing</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Combinations Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Combinations Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Combinations Template</b></li></ul></div>
|
||||
<p class="purpose">Code to support the combination kind of value constructor.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-cmb.html#SP1">§1. Block Format</a></li><li><a href="S-cmb.html#SP2">§2. KOV Support</a></li><li><a href="S-cmb.html#SP3">§3. Creation</a></li><li><a href="S-cmb.html#SP4">§4. Destruction</a></li><li><a href="S-cmb.html#SP5">§5. Copying</a></li><li><a href="S-cmb.html#SP6">§6. Comparison</a></li><li><a href="S-cmb.html#SP7">§7. Hashing</a></li><li><a href="S-cmb.html#SP8">§8. Printing</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Definitions Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Definitions Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Definitions Template</b></li></ul></div>
|
||||
<p class="purpose">Miscellaneous constant definitions, usually providing symbolic names for otherwise inscrutable numbers, which are used throughout the template layer.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-dfn.html#SP1">§1. Identification</a></li><li><a href="S-dfn.html#SP2">§2. Z-Machine Definitions</a></li><li><a href="S-dfn.html#SP3">§3. Glulx Definitions</a></li><li><a href="S-dfn.html#SP4">§4. Nothing</a></li><li><a href="S-dfn.html#SP5">§5. Powers of Two</a></li><li><a href="S-dfn.html#SP6">§6. Text Styles</a></li><li><a href="S-dfn.html#SP7">§7. Colour Numbers</a></li><li><a href="S-dfn.html#SP8">§8. Window Numbers</a></li><li><a href="S-dfn.html#SP9">§9. Paragraphing Flags</a></li><li><a href="S-dfn.html#SP10">§10. Descriptors in the Language of Play</a></li><li><a href="S-dfn.html#SP11">§11. Run-Time Problem Numbers</a></li><li><a href="S-dfn.html#SP12">§12. Template Activities</a></li><li><a href="S-dfn.html#SP13">§13. Template Rulebooks</a></li><li><a href="S-dfn.html#SP14">§14. Scope Searching Reasons</a></li><li><a href="S-dfn.html#SP15">§15. Token Types</a></li><li><a href="S-dfn.html#SP16">§16. GPR Return Values</a></li><li><a href="S-dfn.html#SP17">§17. List Styles</a></li><li><a href="S-dfn.html#SP18">§18. Lengths Of Time</a></li><li><a href="S-dfn.html#SP19">§19. Empty Text</a></li><li><a href="S-dfn.html#SP20">§20. Empty Table</a></li><li><a href="S-dfn.html#SP21">§21. Empty Set</a></li><li><a href="S-dfn.html#SP22">§22. Template Attributes</a></li><li><a href="S-dfn.html#SP23">§23. Template Properties</a></li><li><a href="S-dfn.html#SP24">§24. Formal Parameters</a></li><li><a href="S-dfn.html#SP25">§25. Template Configuration</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -17,10 +17,10 @@
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -40,15 +40,15 @@
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'FileIO Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>FileIO Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>FileIO Template</b></li></ul></div>
|
||||
<p class="purpose">Reading and writing external files, in the Glulx virtual machine only.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-fl.html#SP1">§1. Structure</a></li><li><a href="S-fl.html#SP2">§2. Instances</a></li><li><a href="S-fl.html#SP3">§3. Errors</a></li><li><a href="S-fl.html#SP4">§4. Glulx Material</a></li><li><a href="S-fl.html#SP5">§5. Existence</a></li><li><a href="S-fl.html#SP6">§6. Readiness</a></li><li><a href="S-fl.html#SP7">§7. Open File</a></li><li><a href="S-fl.html#SP8">§8. Close File</a></li><li><a href="S-fl.html#SP9">§9. Get Character</a></li><li><a href="S-fl.html#SP10">§10. Put Character</a></li><li><a href="S-fl.html#SP11">§11. Print Line</a></li><li><a href="S-fl.html#SP12">§12. Print Contents</a></li><li><a href="S-fl.html#SP13">§13. Print Text</a></li><li><a href="S-fl.html#SP14">§14. Serialising Tables</a></li><li><a href="S-fl.html#SP15">§15. Z-Machine Stubs</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Flex Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Flex Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Flex Template</b></li></ul></div>
|
||||
<p class="purpose">To allocate flexible-sized blocks of memory as needed to hold arbitrary-length strings of text, stored actions or other block values.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-flx.html#SP1">§1. Blocks</a></li><li><a href="S-flx.html#SP2">§2. Multiple Blocks</a></li><li><a href="S-flx.html#SP3">§3. The Heap</a></li><li><a href="S-flx.html#SP4">§4. Initialisation</a></li><li><a href="S-flx.html#SP5">§5. Net Free Space</a></li><li><a href="S-flx.html#SP6">§6. Make Space</a></li><li><a href="S-flx.html#SP7">§7. Block Allocation</a></li><li><a href="S-flx.html#SP8">§8. Errors</a></li><li><a href="S-flx.html#SP9">§9. Merging</a></li><li><a href="S-flx.html#SP10">§10. Recutting</a></li><li><a href="S-flx.html#SP11">§11. Deallocation</a></li><li><a href="S-flx.html#SP12">§12. Resizing</a></li><li><a href="S-flx.html#SP13">§13. Block Size</a></li><li><a href="S-flx.html#SP14">§14. Debugging Routines</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Glulx Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Glulx Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Glulx Template</b></li></ul></div>
|
||||
<p class="purpose">To start up the Glk interface for the Glulx virtual machine, and provide Glulx-specific printing functions.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-gll.html#SP1">§1. Begin Glulx-only matter</a></li><li><a href="S-gll.html#SP2">§2. Summary</a></li><li><a href="S-gll.html#SP3">§3. Variables and Arrays</a></li><li><a href="S-gll.html#SP4">§4. Infglk</a></li><li><a href="S-gll.html#SP5">§5. Rocks</a></li><li><a href="S-gll.html#SP6">§6. Stubs</a></li><li><a href="S-gll.html#SP7">§7. Starting Up</a></li><li><a href="S-gll.html#SP8">§8. Release Number</a></li><li><a href="S-gll.html#SP9">§9. Keyboard Input</a></li><li><a href="S-gll.html#SP10">§10. Buffer Functions</a></li><li><a href="S-gll.html#SP11">§11. Dictionary Functions</a></li><li><a href="S-gll.html#SP12">§12. Command Tables</a></li><li><a href="S-gll.html#SP13">§13. Random Number Generator</a></li><li><a href="S-gll.html#SP14">§14. Memory Allocation</a></li><li><a href="S-gll.html#SP15">§15. Audiovisual Resources</a></li><li><a href="S-gll.html#SP16">§16. Typography</a></li><li><a href="S-gll.html#SP17">§17. Character Casing</a></li><li><a href="S-gll.html#SP18">§18. Glulx-Only Printing Routines</a></li><li><a href="S-gll.html#SP19">§19. The Screen</a></li><li><a href="S-gll.html#SP20">§20. Window Colours</a></li><li><a href="S-gll.html#SP21">§21. Main Window</a></li><li><a href="S-gll.html#SP22">§22. Status Line</a></li><li><a href="S-gll.html#SP23">§23. Quotation Boxes</a></li><li><a href="S-gll.html#SP24">§24. Veneer</a></li><li><a href="S-gll.html#SP25">§25. End Glulx-only matter</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Lists Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Lists Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Lists Template</b></li></ul></div>
|
||||
<p class="purpose">Code to support the list of... kind of value constructor.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-lst.html#SP1">§1. Block Format</a></li><li><a href="S-lst.html#SP2">§2. KOV Support</a></li><li><a href="S-lst.html#SP3">§3. Creation</a></li><li><a href="S-lst.html#SP4">§4. Destruction</a></li><li><a href="S-lst.html#SP5">§5. Copying</a></li><li><a href="S-lst.html#SP6">§6. Comparison</a></li><li><a href="S-lst.html#SP7">§7. Hashing</a></li><li><a href="S-lst.html#SP8">§8. Printing</a></li><li><a href="S-lst.html#SP9">§9. List From Description</a></li><li><a href="S-lst.html#SP10">§10. Find Item</a></li><li><a href="S-lst.html#SP11">§11. Insert Item</a></li><li><a href="S-lst.html#SP12">§12. Append List</a></li><li><a href="S-lst.html#SP13">§13. Remove Value</a></li><li><a href="S-lst.html#SP14">§14. Remove Item Range</a></li><li><a href="S-lst.html#SP15">§15. Remove List</a></li><li><a href="S-lst.html#SP16">§16. Get Length</a></li><li><a href="S-lst.html#SP17">§17. Set Length</a></li><li><a href="S-lst.html#SP18">§18. Get Item</a></li><li><a href="S-lst.html#SP19">§19. Write Item</a></li><li><a href="S-lst.html#SP20">§20. Put Item</a></li><li><a href="S-lst.html#SP21">§21. Reversing</a></li><li><a href="S-lst.html#SP22">§22. Rotation</a></li><li><a href="S-lst.html#SP23">§23. Sorting</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'MStack Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>MStack Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>MStack Template</b></li></ul></div>
|
||||
<p class="purpose">To allocate space on the memory stack for frames of variables to be used by rulebooks, activities and actions.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-mst.html#SP1">§1. The Memory Stack</a></li><li><a href="S-mst.html#SP2">§2. Create Frame</a></li><li><a href="S-mst.html#SP3">§3. Destroy Frame</a></li><li><a href="S-mst.html#SP4">§4. Seek Frame</a></li><li><a href="S-mst.html#SP5">§5. Backtrace</a></li><li><a href="S-mst.html#SP6">§6. Access to Variables</a></li><li><a href="S-mst.html#SP7">§7. Access to Nonexistent Variables</a></li><li><a href="S-mst.html#SP8">§8. Rulebook Variables</a></li><li><a href="S-mst.html#SP9">§9. Activity Variables</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Mathematics Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Mathematics Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Mathematics Template</b></li></ul></div>
|
||||
<p class="purpose">Mathematical functions, especially for real numbers.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-mth.html#SP1">§1. Square Root</a></li><li><a href="S-mth.html#SP2">§2. Cube Root</a></li><li><a href="S-mth.html#SP3">§3. Absolute value</a></li><li><a href="S-mth.html#SP4">§4. IntegerDivide</a></li><li><a href="S-mth.html#SP5">§5. IntegerRemainder</a></li><li><a href="S-mth.html#SP6">§6. UnsignedCompare</a></li><li><a href="S-mth.html#SP7">§7. SignedCompare</a></li><li><a href="S-mth.html#SP8">§8. Printing reals</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -17,10 +17,10 @@
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -40,15 +40,15 @@
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Paragraphing' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Paragraphing</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Paragraphing</b></li></ul></div>
|
||||
<p class="purpose">To manage the line skips which space paragraphs out.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-prg.html#SP1">§1. Paragraph Control</a></li><li><a href="S-prg.html#SP2">§2. State</a></li><li><a href="S-prg.html#SP3">§3. Say Number</a></li><li><a href="S-prg.html#SP4">§4. Print English Number</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'RegExp Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>RegExp Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>RegExp Template</b></li></ul></div>
|
||||
<p class="purpose">Code to match and replace on regular expressions against indexed text strings.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-rgx.html#SP1">§1. Debugging</a></li><li><a href="S-rgx.html#SP2">§2. Algorithm</a></li><li><a href="S-rgx.html#SP3">§3. Class Codes</a></li><li><a href="S-rgx.html#SP4">§4. Packets</a></li><li><a href="S-rgx.html#SP5">§5. Nodes</a></li><li><a href="S-rgx.html#SP6">§6. Match Variables</a></li><li><a href="S-rgx.html#SP7">§7. Markers</a></li><li><a href="S-rgx.html#SP8">§8. Debugging</a></li><li><a href="S-rgx.html#SP9">§9. Compiling Tree For Substring Search</a></li><li><a href="S-rgx.html#SP10">§10. Compiling Tree For Regexp Search</a></li><li><a href="S-rgx.html#SP11">§11. Parser</a></li><li><a href="S-rgx.html#SP12">§12. Parse At Position</a></li><li><a href="S-rgx.html#SP13">§13. Backtracking</a></li><li><a href="S-rgx.html#SP14">§14. Fail Subexpressions</a></li><li><a href="S-rgx.html#SP15">§15. Erasing Constraints</a></li><li><a href="S-rgx.html#SP16">§16. Matching Literal Text</a></li><li><a href="S-rgx.html#SP17">§17. Matching Character Range</a></li><li><a href="S-rgx.html#SP18">§18. Search And Replace</a></li><li><a href="S-rgx.html#SP19">§19. Concatenation</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Rulebooks Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Rulebooks Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Rulebooks Template</b></li></ul></div>
|
||||
<p class="purpose">To work through the rules in a rulebook until a decision is made.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-rlb.html#SP1">§1. Latest Rule Result</a></li><li><a href="S-rlb.html#SP2">§2. Following</a></li><li><a href="S-rlb.html#SP3">§3. Specifying Outcomes</a></li><li><a href="S-rlb.html#SP4">§4. Discovering Outcomes</a></li><li><a href="S-rlb.html#SP5">§5. Printing Rule Names</a></li><li><a href="S-rlb.html#SP6">§6. Casting</a></li><li><a href="S-rlb.html#SP7">§7. Debugging</a></li><li><a href="S-rlb.html#SP8">§8. The Default Rule and Rulebook</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Relation Kind Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Relation Kind Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Relation Kind Template</b></li></ul></div>
|
||||
<p class="purpose">Code to support the relation kind.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-rlt.html#SP1">§1. Block Format</a></li><li><a href="S-rlt.html#SP2">§2. KOV Support</a></li><li><a href="S-rlt.html#SP3">§3. Other Definitions</a></li><li><a href="S-rlt.html#SP4">§4. Tunable Parameters</a></li><li><a href="S-rlt.html#SP5">§5. Abstract Relations</a></li><li><a href="S-rlt.html#SP6">§6. Empty Relations</a></li><li><a href="S-rlt.html#SP7">§7. Creation</a></li><li><a href="S-rlt.html#SP8">§8. Destruction</a></li><li><a href="S-rlt.html#SP9">§9. Copying</a></li><li><a href="S-rlt.html#SP10">§10. Comparison</a></li><li><a href="S-rlt.html#SP11">§11. Printing</a></li><li><a href="S-rlt.html#SP12">§12. Naming</a></li><li><a href="S-rlt.html#SP13">§13. Choose Relation Handler</a></li><li><a href="S-rlt.html#SP14">§14. Valency</a></li><li><a href="S-rlt.html#SP15">§15. Double Hash Set Relation Handler</a></li><li><a href="S-rlt.html#SP16">§16. Hash List Relation Handler</a></li><li><a href="S-rlt.html#SP17">§17. Hash Table Relation Handler</a></li><li><a href="S-rlt.html#SP18">§18. Reversed Hash Table Relation Handler</a></li><li><a href="S-rlt.html#SP19">§19. Symmetric Relation Handlers</a></li><li><a href="S-rlt.html#SP20">§20. Hash Core Relation Handler</a></li><li><a href="S-rlt.html#SP21">§21. Equivalence Hash Table Relation Handler</a></li><li><a href="S-rlt.html#SP22">§22. Two-In-One Hash Table Relation Handler</a></li><li><a href="S-rlt.html#SP23">§23. Empty</a></li></ul><hr class="tocbar">
|
||||
|
@ -224,7 +224,7 @@ operations it does offer.
|
|||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="plain-syntax">[ </span><span class="identifier-syntax">RelationTest</span><span class="plain-syntax"> </span><span class="identifier-syntax">relation</span><span class="plain-syntax"> </span><span class="identifier-syntax">task</span><span class="plain-syntax"> </span><span class="identifier-syntax">X</span><span class="plain-syntax"> </span><span class="identifier-syntax">Y</span><span class="plain-syntax"> </span><span class="identifier-syntax">handler</span><span class="plain-syntax"> </span><span class="identifier-syntax">rv</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">[ </span><span class="identifier-syntax">RelationTest</span><span class="plain-syntax"> </span><span class="identifier-syntax">relation</span><span class="plain-syntax"> </span><span class="identifier-syntax">task</span><span class="plain-syntax"> </span><span class="identifier-syntax">X</span><span class="plain-syntax"> </span><span class="identifier-syntax">Y</span><span class="plain-syntax"> </span><span class="identifier-syntax">handler</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">handler</span><span class="plain-syntax"> = </span><span class="identifier-syntax">RlnGetF</span><span class="plain-syntax">(</span><span class="identifier-syntax">relation</span><span class="plain-syntax">, </span><span class="identifier-syntax">RR_HANDLER</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">handler</span><span class="plain-syntax">(</span><span class="identifier-syntax">relation</span><span class="plain-syntax">, </span><span class="identifier-syntax">task</span><span class="plain-syntax">, </span><span class="identifier-syntax">X</span><span class="plain-syntax">, </span><span class="identifier-syntax">Y</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax">];</span>
|
||||
|
@ -1016,7 +1016,7 @@ the existing pair \((X, Y)\).
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">fl</span><span class="plain-syntax"> & </span><span class="identifier-syntax">RRF_USED</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">sym</span><span class="plain-syntax"> = </span><span class="identifier-syntax">BlkValueRead</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">tmp</span><span class="plain-syntax"> + </span><span class="constant-syntax">2</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">fl</span><span class="plain-syntax"> & </span><span class="identifier-syntax">RRF_SINGLE</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">KOVIsBlockValue</span><span class="plain-syntax">(</span><span class="identifier-syntax">ky</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">KOVIsBlockValue</span><span class="plain-syntax">(</span><span class="identifier-syntax">kx</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">BlkValueCompare</span><span class="plain-syntax">(</span><span class="identifier-syntax">X</span><span class="plain-syntax">, </span><span class="identifier-syntax">sym</span><span class="plain-syntax">) ~= </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">continue</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</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">X</span><span class="plain-syntax"> ~= </span><span class="identifier-syntax">sym</span><span class="plain-syntax">) </span><span class="reserved-syntax">continue</span><span class="plain-syntax">;</span>
|
||||
|
@ -1197,20 +1197,16 @@ the existing pair \((X, Y)\).
|
|||
<span class="plain-syntax">];</span>
|
||||
|
||||
<span class="plain-syntax">[ </span><span class="identifier-syntax">HashCoreLookUp</span><span class="plain-syntax"> </span><span class="identifier-syntax">rel</span><span class="plain-syntax"> </span><span class="identifier-syntax">kx</span><span class="plain-syntax"> </span><span class="identifier-syntax">X</span><span class="plain-syntax"> </span><span class="identifier-syntax">hashv</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax"> </span><span class="identifier-syntax">free</span><span class="plain-syntax"> </span><span class="identifier-syntax">mask</span><span class="plain-syntax"> </span><span class="identifier-syntax">perturb</span><span class="plain-syntax"> </span><span class="identifier-syntax">flags</span><span class="plain-syntax">;</span>
|
||||
<span class="comment-syntax">rint "[HCLU rel=", rel, " kx=", kx, " X=", X, ": ";</span>
|
||||
<span class="plain-syntax"> </span><span class="comment-syntax">calculate a hash value for the key</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">hashv</span><span class="plain-syntax"> = </span><span class="identifier-syntax">GetHashValue</span><span class="plain-syntax">(</span><span class="identifier-syntax">kx</span><span class="plain-syntax">, </span><span class="identifier-syntax">X</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="comment-syntax">look in the first expected slot</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">mask</span><span class="plain-syntax"> = </span><span class="identifier-syntax">BlkValueRead</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">RRV_STORAGE</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax"> = </span><span class="identifier-syntax">hashv</span><span class="plain-syntax"> & </span><span class="identifier-syntax">mask</span><span class="plain-syntax">;</span>
|
||||
<span class="comment-syntax">rint "hv=", hashv, ", trying ", i;</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">flags</span><span class="plain-syntax"> = </span><span class="identifier-syntax">BlkValueRead</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">RRV_DATA_BASE</span><span class="plain-syntax"> + </span><span class="constant-syntax">3</span><span class="plain-syntax">*</span><span class="identifier-syntax">i</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">flags</span><span class="plain-syntax"> == </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
|
||||
<span class="comment-syntax">rint " - not found]^";</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> ~</span><span class="identifier-syntax">i</span><span class="plain-syntax">;</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">HashCoreEntryMatches</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">i</span><span class="plain-syntax">, </span><span class="identifier-syntax">kx</span><span class="plain-syntax">, </span><span class="identifier-syntax">X</span><span class="plain-syntax">)) {</span>
|
||||
<span class="comment-syntax">rint " - found]^";</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> </span><span class="comment-syntax">not here, keep looking in sequence</span>
|
||||
|
@ -1221,15 +1217,12 @@ the existing pair \((X, Y)\).
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (::) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">hashv</span><span class="plain-syntax"> = </span><span class="identifier-syntax">hashv</span><span class="plain-syntax">*5 + </span><span class="identifier-syntax">perturb</span><span class="plain-syntax"> + </span><span class="constant-syntax">1</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax"> = </span><span class="identifier-syntax">hashv</span><span class="plain-syntax"> & </span><span class="identifier-syntax">mask</span><span class="plain-syntax">;</span>
|
||||
<span class="comment-syntax">rint ", ", i;</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">flags</span><span class="plain-syntax"> = </span><span class="identifier-syntax">BlkValueRead</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">RRV_DATA_BASE</span><span class="plain-syntax"> + </span><span class="constant-syntax">3</span><span class="plain-syntax">*</span><span class="identifier-syntax">i</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">flags</span><span class="plain-syntax"> == </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
|
||||
<span class="comment-syntax">rint " - not found]^";</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">free</span><span class="plain-syntax"> >= </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> ~</span><span class="identifier-syntax">free</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> ~</span><span class="identifier-syntax">i</span><span class="plain-syntax">;</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">HashCoreEntryMatches</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">i</span><span class="plain-syntax">, </span><span class="identifier-syntax">kx</span><span class="plain-syntax">, </span><span class="identifier-syntax">X</span><span class="plain-syntax">)) {</span>
|
||||
<span class="comment-syntax">rint " - found]^";</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">;</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">free</span><span class="plain-syntax"> < </span><span class="constant-syntax">0</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">flags</span><span class="plain-syntax"> & </span><span class="identifier-syntax">RRF_DELETED</span><span class="plain-syntax">)) </span><span class="identifier-syntax">free</span><span class="plain-syntax"> = </span><span class="identifier-syntax">i</span><span class="plain-syntax">;</span>
|
||||
|
@ -1259,7 +1252,7 @@ the existing pair \((X, Y)\).
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">BlkValueWrite</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">RRV_DATA_BASE</span><span class="plain-syntax">+</span><span class="identifier-syntax">i</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="comment-syntax">copy entries back from temporary space</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">kov</span><span class="plain-syntax"> = </span><span class="identifier-syntax">BlkValueRead</span><span class="plain-syntax">(</span><span class="identifier-syntax">rel</span><span class="plain-syntax">, </span><span class="identifier-syntax">RRV_KIND</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">kx</span><span class="plain-syntax"> = </span><span class="identifier-syntax">KindBaseTerm</span><span class="plain-syntax">(</span><span class="identifier-syntax">kov</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">kx</span><span class="plain-syntax"> = </span><span class="identifier-syntax">KindBaseTerm</span><span class="plain-syntax">(</span><span class="identifier-syntax">kov</span><span class="plain-syntax">, </span><span class="constant-syntax">1</span><span class="plain-syntax">); </span><span class="comment-syntax">Was 0</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="identifier-syntax">i</span><span class="plain-syntax">=0: </span><span class="identifier-syntax">i</span><span class="plain-syntax"><</span><span class="identifier-syntax">ext</span><span class="plain-syntax">: </span><span class="identifier-syntax">i</span><span class="plain-syntax">++) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><span class="identifier-syntax">BlkValueRead</span><span class="plain-syntax">(</span><span class="identifier-syntax">temp</span><span class="plain-syntax">, </span><span class="constant-syntax">3</span><span class="plain-syntax">*</span><span class="identifier-syntax">i</span><span class="plain-syntax">, </span><span class="reserved-syntax">true</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">F</span><span class="plain-syntax"> == </span><span class="constant-syntax">0</span><span class="plain-syntax"> || (</span><span class="identifier-syntax">F</span><span class="plain-syntax"> & </span><span class="identifier-syntax">RRF_DELETED</span><span class="plain-syntax">)) </span><span class="reserved-syntax">continue</span><span class="plain-syntax">;</span>
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Relations Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Relations Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Relations Template</b></li></ul></div>
|
||||
<p class="purpose">To manage run-time storage for relations between objects, and to find routes through relations and the map.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-rlt2.html#SP1">§1. Relation Records</a></li><li><a href="S-rlt2.html#SP2">§2. Valency Adjectives</a></li><li><a href="S-rlt2.html#SP3">§3. One To One Relations</a></li><li><a href="S-rlt2.html#SP4">§4. Symmetric One To One Relations</a></li><li><a href="S-rlt2.html#SP5">§5. Various To Various Relations</a></li><li><a href="S-rlt2.html#SP6">§6. Equivalence Relations</a></li><li><a href="S-rlt2.html#SP7">§7. Show Various to Various</a></li><li><a href="S-rlt2.html#SP8">§8. Show One to One</a></li><li><a href="S-rlt2.html#SP9">§9. Show Reversed One to One</a></li><li><a href="S-rlt2.html#SP10">§10. Show Equivalence</a></li><li><a href="S-rlt2.html#SP11">§11. Relation Emptying</a></li><li><a href="S-rlt2.html#SP12">§12. Relation Route-Finding</a></li><li><a href="S-rlt2.html#SP13">§13. One To Various Route-Finding</a></li><li><a href="S-rlt2.html#SP14">§14. Various To One Route-Finding</a></li><li><a href="S-rlt2.html#SP15">§15. Slow Various To Various Route-Finding</a></li><li><a href="S-rlt2.html#SP16">§16. Fast Various To Various Route-Finding</a></li><li><a href="S-rlt2.html#SP17">§17. Iterating Relations</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -17,10 +17,10 @@
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -40,15 +40,15 @@
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'RTP Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>RTP Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>RTP Template</b></li></ul></div>
|
||||
<p class="purpose">To issue run-time problem messages, and to perform some run-time type checking which may issue such messages.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-rtp.html#SP1">§1. Reporting</a></li><li><a href="S-rtp.html#SP2">§2. Low-Level Errors</a></li><li><a href="S-rtp.html#SP3">§3. Argument Type Checking Failed</a></li><li><a href="S-rtp.html#SP4">§4. Return Type Checking Failed</a></li><li><a href="S-rtp.html#SP5">§5. Whether Provides</a></li><li><a href="S-rtp.html#SP6">§6. Scan Property Metadata</a></li><li><a href="S-rtp.html#SP7">§7. Read Property</a></li><li><a href="S-rtp.html#SP8">§8. Write Property</a></li><li><a href="S-rtp.html#SP9">§9. Printing Property Names</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Sort Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Sort Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Sort Template</b></li></ul></div>
|
||||
<p class="purpose">To sort arrays.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-srt.html#SP1">§1. Storage</a></li><li><a href="S-srt.html#SP2">§2. Front End</a></li><li><a href="S-srt.html#SP3">§3. Sort Range</a></li><li><a href="S-srt.html#SP4">§4. Comparison and Exchange</a></li><li><a href="S-srt.html#SP5">§5. 4W37 Sort</a></li><li><a href="S-srt.html#SP6">§6. Insertion Sort</a></li><li><a href="S-srt.html#SP7">§7. In-Place Mergesort</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Tables Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Tables Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Tables Template</b></li></ul></div>
|
||||
<p class="purpose">To read, write, search and allocate rows in the Table data structure.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-tbl.html#SP1">§1. Format</a></li><li><a href="S-tbl.html#SP2">§2. Find Column</a></li><li><a href="S-tbl.html#SP3">§3. Number of Rows</a></li><li><a href="S-tbl.html#SP4">§4. Blanks</a></li><li><a href="S-tbl.html#SP5">§5. Masks</a></li><li><a href="S-tbl.html#SP6">§6. Testing Blankness</a></li><li><a href="S-tbl.html#SP7">§7. Force Entry Blank</a></li><li><a href="S-tbl.html#SP8">§8. Force Entry Non-Blank</a></li><li><a href="S-tbl.html#SP9">§9. Swapping Blank Bits</a></li><li><a href="S-tbl.html#SP10">§10. Moving Blank Bits Down</a></li><li><a href="S-tbl.html#SP11">§11. Table Row Corresponding</a></li><li><a href="S-tbl.html#SP12">§12. Table Look Up Corresponding Row</a></li><li><a href="S-tbl.html#SP13">§13. Table Look Up Entry</a></li><li><a href="S-tbl.html#SP14">§14. Blank Rows</a></li><li><a href="S-tbl.html#SP15">§15. Random Row</a></li><li><a href="S-tbl.html#SP16">§16. Swap Rows</a></li><li><a href="S-tbl.html#SP17">§17. Compare Rows</a></li><li><a href="S-tbl.html#SP18">§18. Move Row Down</a></li><li><a href="S-tbl.html#SP19">§19. Shuffle</a></li><li><a href="S-tbl.html#SP20">§20. Next Row</a></li><li><a href="S-tbl.html#SP21">§21. Move Blanks to Back</a></li><li><a href="S-tbl.html#SP22">§22. Sort</a></li><li><a href="S-tbl.html#SP23">§23. Print Table to File</a></li><li><a href="S-tbl.html#SP24">§24. Read Table from File</a></li><li><a href="S-tbl.html#SP25">§25. Debugging</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -17,10 +17,10 @@
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -40,15 +40,15 @@
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Text Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Text Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Text Template</b></li></ul></div>
|
||||
<p class="purpose">Code to support the text kind of value.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-txt.html#SP1">§1. Block Format</a></li><li><a href="S-txt.html#SP2">§2. Extent Of Long Block</a></li><li><a href="S-txt.html#SP3">§3. Character Set</a></li><li><a href="S-txt.html#SP4">§4. KOV Support</a></li><li><a href="S-txt.html#SP5">§5. Debugging</a></li><li><a href="S-txt.html#SP6">§6. Creation</a></li><li><a href="S-txt.html#SP7">§7. Copy Short Block</a></li><li><a href="S-txt.html#SP8">§8. Transmutation</a></li><li><a href="S-txt.html#SP9">§9. Mutability</a></li><li><a href="S-txt.html#SP10">§10. Casting</a></li><li><a href="S-txt.html#SP11">§11. Data Conversion</a></li><li><a href="S-txt.html#SP12">§12. Z Version</a></li><li><a href="S-txt.html#SP13">§13. Glulx Version</a></li><li><a href="S-txt.html#SP14">§14. Comparison</a></li><li><a href="S-txt.html#SP15">§15. Hashing</a></li><li><a href="S-txt.html#SP16">§16. Printing</a></li><li><a href="S-txt.html#SP17">§17. Capitalised printing</a></li><li><a href="S-txt.html#SP18">§18. Serialisation</a></li><li><a href="S-txt.html#SP19">§19. Unserialisation</a></li><li><a href="S-txt.html#SP20">§20. Substitution</a></li><li><a href="S-txt.html#SP21">§21. Perishability</a></li><li><a href="S-txt.html#SP22">§22. Blobs</a></li><li><a href="S-txt.html#SP23">§23. Blob Access</a></li><li><a href="S-txt.html#SP24">§24. Get Blob</a></li><li><a href="S-txt.html#SP25">§25. Replace Blob</a></li><li><a href="S-txt.html#SP26">§26. Replace Text</a></li><li><a href="S-txt.html#SP27">§27. Character Length</a></li><li><a href="S-txt.html#SP28">§28. Get Character</a></li><li><a href="S-txt.html#SP29">§29. Casing</a></li><li><a href="S-txt.html#SP30">§30. Change Case</a></li><li><a href="S-txt.html#SP31">§31. Concatenation</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'UnicodeData Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>UnicodeData Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>UnicodeData Template</b></li></ul></div>
|
||||
<p class="purpose">To tabulate casings in the character set.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-unc.html#SP1">§1. Source</a></li><li><a href="S-unc.html#SP2">§2. ZSCII Casing Tables</a></li><li><a href="S-unc.html#SP3">§3. Small Unicode Casing Tables</a></li><li><a href="S-unc.html#SP4">§4. Large Unicode Casing Tables</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'Utilities Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Utilities Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>Utilities Template</b></li></ul></div>
|
||||
<p class="purpose">Miscellaneous utility routines for some fundamental I6 needs.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-utl.html#SP1">§1. Miscellany</a></li><li><a href="S-utl.html#SP2">§2. Final Code Dependencies</a></li><li><a href="S-utl.html#SP3">§3. Firebreak</a></li><li><a href="S-utl.html#SP4">§4. Print Decimal Number</a></li><li><a href="S-utl.html#SP5">§5. Print Text</a></li><li><a href="S-utl.html#SP6">§6. Print Or Run</a></li><li><a href="S-utl.html#SP7">§7. Saying Phrases</a></li><li><a href="S-utl.html#SP8">§8. Kinds</a></li><li><a href="S-utl.html#SP9">§9. GenerateRandomNumber</a></li><li><a href="S-utl.html#SP10">§10. PrintSpaces</a></li><li><a href="S-utl.html#SP11">§11. SwapWorkflags</a></li><li><a href="S-utl.html#SP12">§12. TestUseOption</a></li><li><a href="S-utl.html#SP13">§13. ZRegion</a></li><li><a href="S-utl.html#SP14">§14. Memcpy</a></li><li><a href="S-utl.html#SP15">§15. Arrcpy</a></li><li><a href="S-utl.html#SP16">§16. Verbs as Values</a></li><li><a href="S-utl.html#SP17">§17. Seed Random Number Generator Rule</a></li><li><a href="S-utl.html#SP18">§18. Extracting Verb Numbers</a></li><li><a href="S-utl.html#SP19">§19. Say One Of</a></li><li><a href="S-utl.html#SP20">§20. Rounding</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -31,10 +31,10 @@ MathJax = {
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -54,15 +54,15 @@ MathJax = {
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<!--Weave of 'ZMachine Template' generated by Inweb-->
|
||||
<div class="breadcrumbs">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>ZMachine Template</b></li></ul></div>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><a href="index.html">BasicInformKit</a></li><li><b>ZMachine Template</b></li></ul></div>
|
||||
<p class="purpose">To provide routines handling low-level Z-machine facilities.</p>
|
||||
|
||||
<ul class="toc"><li><a href="S-zmc.html#SP1">§1. Begin Z-only matter</a></li><li><a href="S-zmc.html#SP2">§2. Summary</a></li><li><a href="S-zmc.html#SP3">§3. Variables and Arrays</a></li><li><a href="S-zmc.html#SP4">§4. Release Number</a></li><li><a href="S-zmc.html#SP5">§5. Keyboard Input</a></li><li><a href="S-zmc.html#SP6">§6. Buffer Functions</a></li><li><a href="S-zmc.html#SP7">§7. Dictionary Functions</a></li><li><a href="S-zmc.html#SP8">§8. Command Tables</a></li><li><a href="S-zmc.html#SP9">§9. RNG</a></li><li><a href="S-zmc.html#SP10">§10. Memory Allocation</a></li><li><a href="S-zmc.html#SP11">§11. Audiovisual Resources</a></li><li><a href="S-zmc.html#SP12">§12. Typography</a></li><li><a href="S-zmc.html#SP13">§13. Character Casing</a></li><li><a href="S-zmc.html#SP14">§14. The Screen</a></li><li><a href="S-zmc.html#SP15">§15. Window Colours</a></li><li><a href="S-zmc.html#SP16">§16. Main Window</a></li><li><a href="S-zmc.html#SP17">§17. Status Line</a></li><li><a href="S-zmc.html#SP18">§18. Quotation Boxes</a></li><li><a href="S-zmc.html#SP19">§19. Undo</a></li><li><a href="S-zmc.html#SP20">§20. Veneer</a></li><li><a href="S-zmc.html#SP21">§21. End Z-only matter</a></li></ul><hr class="tocbar">
|
||||
|
|
|
@ -15,10 +15,10 @@
|
|||
</head>
|
||||
<body class="commentary-font">
|
||||
<nav role="navigation">
|
||||
<h1><a href="../overview.html">
|
||||
<h1><a href="../index.html">
|
||||
<img src="../docs-assets/Inform.png" height=72">
|
||||
</a></h1>
|
||||
<ul><li><a href="../overview.html">home</a></li>
|
||||
<ul><li><a href="../index.html">home</a></li>
|
||||
</ul><h2>Compiler</h2><ul>
|
||||
<li><a href="../structure.html">structure</a></li>
|
||||
<li><a href="../inbuildn.html">inbuild</a></li>
|
||||
|
@ -38,13 +38,13 @@
|
|||
</ul><h2>Repository</h2><ul>
|
||||
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=18> github</a></li>
|
||||
</ul><h2>Related Projects</h2><ul>
|
||||
<li><a href="../../../inweb/docs/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/docs/index.html">intest</a></li>
|
||||
<li><a href="../../../inweb/index.html">inweb</a></li>
|
||||
<li><a href="../../../intest/index.html">intest</a></li>
|
||||
|
||||
</ul>
|
||||
</nav>
|
||||
<main role="main">
|
||||
<ul class="crumbs"><li><a href="../overview.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><b>BasicInformKit</b></li></ul>
|
||||
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../extensions.html">Kits</a></li><li><b>BasicInformKit</b></li></ul>
|
||||
<p class="purpose">Inter-level support for the fundamentals of the Inform language. This is version 1.</p>
|
||||
<hr>
|
||||
<div class="contentspage">
|
||||
|
|
|
@ -362,10 +362,7 @@ group.
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">Problems::quote_source</span><span class="plain-syntax">(1, </span><span class="identifier-syntax">current_sentence</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">StandardProblems::handmade_problem</span><span class="plain-syntax">(</span><a href="1-wtc.html#SP6" class="function-link"><span class="function-syntax">Task::syntax_tree</span></a><span class="plain-syntax">(), </span><span class="identifier-syntax">_p_</span><span class="plain-syntax">(</span><span class="identifier-syntax">PM_BogusExtension</span><span class="plain-syntax">));</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Problems::issue_problem_segment</span><span class="plain-syntax">(</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"I can't find the extension requested by: %1. %P"</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"You can get hold of extensions which people have made public at "</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"the Inform website, www.inform7.com, or by using the Public "</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"Library in the Extensions panel."</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"I can't find the extension requested by: %1."</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Problems::issue_problem_end</span><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">ExtVersionTooLow_SYNERROR:</span>
|
||||
|
@ -375,10 +372,7 @@ group.
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">StandardProblems::handmade_problem</span><span class="plain-syntax">(</span><a href="1-wtc.html#SP6" class="function-link"><span class="function-syntax">Task::syntax_tree</span></a><span class="plain-syntax">(), </span><span class="identifier-syntax">_p_</span><span class="plain-syntax">(</span><span class="identifier-syntax">PM_ExtVersionTooLow</span><span class="plain-syntax">));</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Problems::issue_problem_segment</span><span class="plain-syntax">(</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"I can't find the right version of the extension requested by %1 - "</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"I can only find %2. %P"</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"You can get hold of extensions which people have made public at "</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"the Inform website, www.inform7.com, or by using the Public "</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"Library in the Extensions panel."</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"I can only find %2."</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Problems::issue_problem_end</span><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">ExtVersionMalformed_SYNERROR:</span>
|
||||
|
|
|
@ -331,7 +331,7 @@ the order in which filenames are read from a directory listing.
|
|||
<span class="plain-syntax">}</span>
|
||||
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Main::add_directory_contents_targets</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">Main::add_directory_contents_targets</span></span>:<br/><a href="1-mn.html#SP3">§3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">linked_list</span><span class="plain-syntax"> *</span><span class="identifier-syntax">L</span><span class="plain-syntax"> = </span><a href="../../../inweb/foundation-module/3-drc.html#SP3" class="function-link"><span class="function-syntax">Directories::listing</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">P</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">linked_list</span><span class="plain-syntax"> *</span><span class="identifier-syntax">L</span><span class="plain-syntax"> = </span><a href="../../../inweb/foundation-module/3-drc.html#SP4" class="function-link"><span class="function-syntax">Directories::listing</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">P</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">entry</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">LOOP_OVER_LINKED_LIST</span><span class="plain-syntax">(</span><span class="identifier-syntax">entry</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">FILENAME</span><span class="plain-syntax">)</span>
|
||||
|
|
|
@ -143,7 +143,7 @@ the software, but it's still helpful.
|
|||
to other copies. It gives a systematic answer to the question "how do I
|
||||
build or use this?". There are two kinds of arrows, use arrows and build
|
||||
arrows. A use arrow from A to B means that you need to have B installed
|
||||
in order to be able to use A. The above example, then, tells us that we
|
||||
in order to be able to use A. The above example, then, tells us that we need
|
||||
Menus in order to use Basic Help Menu, and we need Basic Screen Effects in
|
||||
order to use Menus.
|
||||
</p>
|
||||
|
|
|
@ -466,6 +466,9 @@ rather than <span class="extract"><span class="extract-syntax">core</span></span
|
|||
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Main::bareword</span><button class="popup" onclick="togglePopup('usagePopup8')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup8">Usage of <span class="code-font"><span class="function-syntax">Main::bareword</span></span>:<br/><a href="1-mn.html#SP4">§4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">opt</span><span class="plain-syntax">, </span><span class="reserved-syntax">void</span><span class="plain-syntax"> *</span><span class="identifier-syntax">state</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../../../inweb/foundation-module/4-sm.html#SP23" class="function-link"><span class="function-syntax">Str::is_whitespace</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">opt</span><span class="plain-syntax">) == </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../../../inweb/foundation-module/4-sm.html#SP13" class="function-link"><span class="function-syntax">Str::get_last_char</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">opt</span><span class="plain-syntax">) == </span><span class="constant-syntax">FOLDER_SEPARATOR</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><a href="../../../inweb/foundation-module/3-em.html#SP2" class="function-link"><span class="function-syntax">Errors::fatal_with_text</span></a><span class="plain-syntax">(</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"to compile a project in a directory, use '-project %S'"</span><span class="plain-syntax">, </span><span class="identifier-syntax">opt</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><a href="../../../inweb/foundation-module/3-fln.html#SP3" class="function-link"><span class="function-syntax">Filenames::from_text</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">opt</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../supervisor-module/1-ic.html#SP17" class="function-link"><span class="function-syntax">Supervisor::set_I7_source</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">) == </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><a href="../../../inweb/foundation-module/3-em.html#SP2" class="function-link"><span class="function-syntax">Errors::fatal_with_text</span></a><span class="plain-syntax">(</span><span class="string-syntax">"unknown command line argument: %S (see -help)"</span><span class="plain-syntax">, </span><span class="identifier-syntax">opt</span><span class="plain-syntax">);</span>
|
||||
|
|
|
@ -70,34 +70,35 @@ which take more than 1/1000th of the total running time.
|
|||
|
||||
<pre class="undisplayed-code all-displayed-code code-font">
|
||||
<span class="plain-syntax">100.0% in inform7 run</span>
|
||||
<span class="plain-syntax"> 71.8% in compilation to Inter</span>
|
||||
<span class="plain-syntax"> 51.2% in </span><a href="../core-module/1-htc.html#SP9" class="internal">Sequence::undertake_queued_tasks</a>
|
||||
<span class="plain-syntax"> 4.6% in </span><a href="../assertions-module/2-ptmn.html#SP1" class="internal">MajorNodes::pre_pass</a>
|
||||
<span class="plain-syntax"> 3.4% in </span><a href="../assertions-module/2-ptmn.html#SP1" class="internal">MajorNodes::pass_1</a>
|
||||
<span class="plain-syntax"> 71.1% in compilation to Inter</span>
|
||||
<span class="plain-syntax"> 50.3% in </span><a href="../core-module/1-htc.html#SP9" class="internal">Sequence::undertake_queued_tasks</a>
|
||||
<span class="plain-syntax"> 4.7% in </span><a href="../assertions-module/2-ptmn.html#SP1" class="internal">MajorNodes::pre_pass</a>
|
||||
<span class="plain-syntax"> 3.5% in </span><a href="../assertions-module/2-ptmn.html#SP1" class="internal">MajorNodes::pass_1</a>
|
||||
<span class="plain-syntax"> 1.8% in </span><a href="../assertions-module/5-id.html#SP4" class="internal">ImperativeDefinitions::assess_all</a>
|
||||
<span class="plain-syntax"> 1.8% in </span><a href="../runtime-module/6-pi.html#SP1" class="internal">RTPhrasebook::compile_entries</a>
|
||||
<span class="plain-syntax"> 1.4% in </span><a href="../runtime-module/5-kc.html#SP10" class="internal">RTKindConstructors::compile</a>
|
||||
<span class="plain-syntax"> 1.0% in </span><a href="../core-module/1-htc.html#SP12" class="internal">Sequence::lint_inter</a>
|
||||
<span class="plain-syntax"> 0.6% in </span><a href="../assertions-module/2-ptmn.html#SP1" class="internal">MajorNodes::pass_2</a>
|
||||
<span class="plain-syntax"> 0.6% in </span><a href="../core-module/1-htc.html#SP9" class="internal">Sequence::undertake_queued_tasks</a>
|
||||
<span class="plain-syntax"> 0.6% in </span><a href="../knowledge-module/5-tmw.html#SP5" class="internal">World::stage_V</a>
|
||||
<span class="plain-syntax"> 0.4% in </span><a href="../assertions-module/5-id.html#SP5" class="internal">ImperativeDefinitions::compile_first_block</a>
|
||||
<span class="plain-syntax"> 0.4% in </span><a href="../core-module/1-htc.html#SP9" class="internal">Sequence::undertake_queued_tasks</a>
|
||||
<span class="plain-syntax"> 0.4% in </span><a href="../core-module/1-htc.html#SP9" class="internal">Sequence::undertake_queued_tasks</a>
|
||||
<span class="plain-syntax"> 0.2% in </span><a href="../runtime-module/3-cm.html#SP1" class="internal">CompletionModule::compile</a>
|
||||
<span class="plain-syntax"> 0.2% in </span><a href="../knowledge-module/4-is.html#SP27" class="internal">InferenceSubjects::emit_all</a>
|
||||
<span class="plain-syntax"> 0.2% in </span><a href="../runtime-module/5-kc.html#SP10_7" class="internal">RTKindConstructors::compile_permissions</a>
|
||||
<span class="plain-syntax"> 3.4% not specifically accounted for</span>
|
||||
<span class="plain-syntax"> 25.5% in running Inter pipeline</span>
|
||||
<span class="plain-syntax"> 10.0% in step 14/15: generate inform6 -> auto.inf</span>
|
||||
<span class="plain-syntax"> 0.2% in </span><a href="../core-module/1-wtc.html#SP9" class="internal">Task::make_built_in_kind_constructors</a>
|
||||
<span class="plain-syntax"> 3.0% not specifically accounted for</span>
|
||||
<span class="plain-syntax"> 26.1% in running Inter pipeline</span>
|
||||
<span class="plain-syntax"> 9.9% in step 14/15: generate inform6 -> auto.inf</span>
|
||||
<span class="plain-syntax"> 6.0% in step 6/15: make-synoptic-module</span>
|
||||
<span class="plain-syntax"> 5.6% in step 5/15: load-binary-kits</span>
|
||||
<span class="plain-syntax"> 5.4% in step 6/15: make-synoptic-module</span>
|
||||
<span class="plain-syntax"> 1.4% in step 9/15: make-identifiers-unique</span>
|
||||
<span class="plain-syntax"> 0.4% in step 12/15: eliminate-redundant-operations</span>
|
||||
<span class="plain-syntax"> 0.4% in step 4/15: compile-splats</span>
|
||||
<span class="plain-syntax"> 0.4% in step 7/15: shorten-wiring</span>
|
||||
<span class="plain-syntax"> 0.4% in step 8/15: detect-indirect-calls</span>
|
||||
<span class="plain-syntax"> 0.2% in step 11/15: eliminate-redundant-labels</span>
|
||||
<span class="plain-syntax"> 1.3% not specifically accounted for</span>
|
||||
<span class="plain-syntax"> 0.2% in step 8/15: detect-indirect-calls</span>
|
||||
<span class="plain-syntax"> 1.4% not specifically accounted for</span>
|
||||
<span class="plain-syntax"> 2.2% in supervisor</span>
|
||||
<span class="plain-syntax"> 0.5% not specifically accounted for</span>
|
||||
</pre>
|
||||
|
@ -110,14 +111,14 @@ represent less than 1/1000th of the total.
|
|||
<pre class="undisplayed-code all-displayed-code code-font">
|
||||
<span class="plain-syntax">Total memory consumption was 123345K = 120 MB</span>
|
||||
|
||||
<span class="plain-syntax"> ---- was used for 2044307 objects, in 362626 frames in 0 x 800K = 0K = 0 MB:</span>
|
||||
<span class="plain-syntax"> ---- was used for 2044504 objects, in 362823 frames in 0 x 800K = 0K = 0 MB:</span>
|
||||
|
||||
<span class="plain-syntax"> 33.1% inter_tree_node_array 58 x 8192 = 475136 objects, 41813824 bytes</span>
|
||||
<span class="plain-syntax"> 20.5% text_stream_array 4603 x 100 = 460300 objects, 25924096 bytes</span>
|
||||
<span class="plain-syntax"> 19.2% linked_list 43446 objects, 24329760 bytes</span>
|
||||
<span class="plain-syntax"> 11.1% inter_symbol_array 132 x 1024 = 135168 objects, 14061696 bytes</span>
|
||||
<span class="plain-syntax"> 10.4% inter_error_stash_array 101 x 1024 = 103424 objects, 13241504 bytes</span>
|
||||
<span class="plain-syntax"> 8.2% parse_node 129721 objects, 10377680 bytes</span>
|
||||
<span class="plain-syntax"> 8.2% parse_node 129720 objects, 10377600 bytes</span>
|
||||
<span class="plain-syntax"> 5.8% verb_conjugation 160 objects, 7425280 bytes</span>
|
||||
<span class="plain-syntax"> 4.3% parse_node_annotation_array 346 x 500 = 173000 objects, 5547072 bytes</span>
|
||||
<span class="plain-syntax"> 2.6% pcalc_prop_array 25 x 1000 = 25000 objects, 3400800 bytes</span>
|
||||
|
@ -131,6 +132,7 @@ represent less than 1/1000th of the total.
|
|||
<span class="plain-syntax"> 1.1% match_trie_array 11 x 1000 = 11000 objects, 1496352 bytes</span>
|
||||
<span class="plain-syntax"> 1.1% inter_symbols_table 26588 objects, 1488928 bytes</span>
|
||||
<span class="plain-syntax"> 1.0% i6_schema_array 23 x 100 = 2300 objects, 1380736 bytes</span>
|
||||
<span class="plain-syntax"> 1.0% scan_directory 314 objects, 1296192 bytes</span>
|
||||
<span class="plain-syntax"> 1.0% inter_package 26588 objects, 1276224 bytes</span>
|
||||
<span class="plain-syntax"> 0.8% map_data 670 objects, 1125600 bytes</span>
|
||||
<span class="plain-syntax"> 0.8% id_body 942 objects, 1077648 bytes</span>
|
||||
|
@ -142,7 +144,6 @@ represent less than 1/1000th of the total.
|
|||
<span class="plain-syntax"> 0.6% individual_form 2562 objects, 860832 bytes</span>
|
||||
<span class="plain-syntax"> 0.6% inter_schema_node 8920 objects, 856320 bytes</span>
|
||||
<span class="plain-syntax"> 0.5% unary_predicate_array 16 x 1000 = 16000 objects, 640512 bytes</span>
|
||||
<span class="plain-syntax"> 0.3% scan_directory 116 objects, 478848 bytes</span>
|
||||
<span class="plain-syntax"> 0.3% local_variable_array 47 x 100 = 4700 objects, 452704 bytes</span>
|
||||
<span class="plain-syntax"> 0.3% verb_usage 1128 objects, 388032 bytes</span>
|
||||
<span class="plain-syntax"> 0.2% rule 470 objects, 368480 bytes</span>
|
||||
|
@ -347,7 +348,7 @@ represent less than 1/1000th of the total.
|
|||
|
||||
<span class="plain-syntax">100.0% was used for memory not allocated for objects:</span>
|
||||
|
||||
<span class="plain-syntax"> 57.7% text stream storage 72913024 bytes in 477844 claims</span>
|
||||
<span class="plain-syntax"> 57.7% text stream storage 72912928 bytes in 477842 claims</span>
|
||||
<span class="plain-syntax"> 4.1% dictionary storage 5227008 bytes in 7517 claims</span>
|
||||
<span class="plain-syntax"> ---- sorting 1448 bytes in 149 claims</span>
|
||||
<span class="plain-syntax"> 5.7% source text 7200000 bytes in 3 claims</span>
|
||||
|
@ -365,7 +366,7 @@ represent less than 1/1000th of the total.
|
|||
<span class="plain-syntax"> ---- code generation workspace for objects 1336 bytes in 4 claims</span>
|
||||
<span class="plain-syntax"> 0.2% emitter array storage 280032 bytes in 1997 claims</span>
|
||||
|
||||
<span class="plain-syntax">-145.-5% was overhead - -183807584 bytes = -179499K = -175 MB</span>
|
||||
<span class="plain-syntax">-146.-1% was overhead - -184624848 bytes = -180297K = -176 MB</span>
|
||||
</pre>
|
||||
<p class="commentary firstcommentary"><a id="SP4" class="paragraph-anchor"></a><b>§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
|
||||
|
|
|
@ -4764,21 +4764,21 @@
|
|||
{...}
|
||||
constraint (none) extremes [1, infinity)
|
||||
|
||||
<optional-article> hits 83030/166060 nti 15 constraint (none) extremes [1, infinity)
|
||||
<optional-article> hits 83029/166058 nti 15 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
<article> {...}
|
||||
(hits 16068/47449) (matched long text) constraint (none) extremes [2, infinity)
|
||||
(hits 16068/47448) (matched long text) constraint (none) extremes [2, infinity)
|
||||
{...}
|
||||
(hits 66962/66962) (matched long text) constraint (none) extremes [1, infinity)
|
||||
(hits 66961/66961) (matched long text) constraint (none) extremes [1, infinity)
|
||||
|
||||
<compulsory-article> nti 16 constraint (none) extremes [2, infinity)
|
||||
English:
|
||||
<article> {...}
|
||||
constraint (none) extremes [2, infinity)
|
||||
|
||||
<article> internal hits 16522/98958 nti r2 constraint (none) extremes [1, 1]
|
||||
<article> internal hits 16522/98954 nti r2 constraint (none) extremes [1, 1]
|
||||
|
||||
<definite-article> internal hits 20353/236436 nti r2 constraint (none) extremes [1, 1]
|
||||
<definite-article> internal hits 20353/236434 nti r2 constraint (none) extremes [1, 1]
|
||||
|
||||
<indefinite-article> internal hits 2350/41386 nti r2 constraint (none) extremes [1, 1]
|
||||
|
||||
|
@ -5055,7 +5055,7 @@
|
|||
{...}
|
||||
(hits 99/2082) (matched: '"(considering the first sixteen objects only)[command clarification break]" ( a )') constraint (none) extremes [1, infinity)
|
||||
<if-not-cap> <indefinite-article> <np-unparsed>
|
||||
(hits 322/1418) (matched long text) constraint (none) extremes [2, infinity)
|
||||
(hits 322/1418) (matched: 'an action based rule producing nothing that varies') constraint (none) extremes [2, infinity)
|
||||
<if-not-cap> <definite-article> <np-unparsed>
|
||||
(hits 661/1096) (matched long text) constraint (none) extremes [2, infinity)
|
||||
<np-unparsed>
|
||||
|
@ -5185,16 +5185,16 @@
|
|||
<np-nonrelative>
|
||||
(hits 431/431) (matched long text) constraint (none) extremes [1, infinity)
|
||||
|
||||
<np-with-or-having-tail> hits 0/10194 nti 30 constraint DS = {30} extremes [2, infinity)
|
||||
<np-with-or-having-tail> hits 0/10192 nti 30 constraint DS = {30} extremes [2, infinity)
|
||||
English:
|
||||
it with action {***}
|
||||
(hits 0/3875) constraint DS = {30} extremes [3, infinity)
|
||||
(hits 0/3874) constraint DS = {30} extremes [3, infinity)
|
||||
{with/having} (/) {***}
|
||||
(hits 0/4068) constraint DS = {30} extremes [2, infinity)
|
||||
(hits 0/4067) constraint DS = {30} extremes [2, infinity)
|
||||
{with/having} {...} ( <response-letter> )
|
||||
(hits 0/3483) constraint DS = {30} extremes [5, infinity)
|
||||
(hits 0/3482) constraint DS = {30} extremes [5, infinity)
|
||||
{with/having} <np-new-property-list>
|
||||
(hits 0/4068) constraint DS = {30} extremes [2, infinity)
|
||||
(hits 0/4067) constraint DS = {30} extremes [2, infinity)
|
||||
|
||||
<np-new-property-list> nti 19 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
|
@ -5217,12 +5217,12 @@
|
|||
{...}
|
||||
constraint (none) extremes [1, infinity)
|
||||
|
||||
<np-and-tail> hits 174/3554 nti 6 constraint DS = {6} extremes [1, infinity)
|
||||
<np-and-tail> hits 174/3552 nti 6 constraint DS = {6} extremes [1, infinity)
|
||||
English:
|
||||
, _{and} <np-operand>
|
||||
(hits 8/1080) (matched: ', and didn't understand addressee's last name error') constraint DS = {6} extremes [2, infinity)
|
||||
(hits 8/1079) (matched: ', and didn't understand addressee's last name error') constraint DS = {6} extremes [2, infinity)
|
||||
_{,/and} <np-operand>
|
||||
(hits 166/1278) (matched long text) constraint DS = {6} extremes [1, infinity)
|
||||
(hits 166/1277) (matched long text) constraint DS = {6} extremes [1, infinity)
|
||||
|
||||
<np-kind-phrase> hits 30/516 nti 21 constraint DS = {7} extremes [1, infinity)
|
||||
English:
|
||||
|
@ -5267,7 +5267,7 @@
|
|||
{...} called {...}
|
||||
constraint DS = {12} extremes [3, infinity)
|
||||
|
||||
<np-x-of-y> hits 196/9062 nti 13 constraint DS = {13} extremes [2, infinity)
|
||||
<np-x-of-y> hits 196/9056 nti 13 constraint DS = {13} extremes [2, infinity)
|
||||
English:
|
||||
of {...}
|
||||
(hits 196/2552) (matched: 'of day -- documented at var_time --') constraint DS = {13} extremes [2, infinity)
|
||||
|
@ -5285,7 +5285,7 @@
|
|||
grammatical case
|
||||
(hits 1/1) (matched: 'grammatical case') constraint CS = {14} extremes [2, 2]
|
||||
|
||||
<if-parsing-phrase-tokens> internal hits 2478/41948 nti 27 constraint (none) extremes [0, 0]
|
||||
<if-parsing-phrase-tokens> internal hits 2478/41944 nti 27 constraint (none) extremes [0, 0]
|
||||
|
||||
<k-kind-prototype> internal hits 165/330 nti 28 constraint (none) extremes [1, infinity)
|
||||
|
||||
|
@ -5311,16 +5311,16 @@
|
|||
<k-kind>
|
||||
(hits 5/5) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
|
||||
|
||||
<k-kind> hits 5803/103678 nti r5 constraint (none) extremes [1, infinity)
|
||||
<k-kind> hits 5802/103676 nti r5 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
( <k-kind> )
|
||||
(hits 0/2047) constraint DS = {r5} & CW = {r2, r5} extremes [3, infinity)
|
||||
^<if-parsing-phrase-tokens> <k-kind-variable>
|
||||
(hits 1592/11283) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
(hits 1592/11282) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<if-parsing-phrase-tokens> <k-variable-definition>
|
||||
(hits 201/9691) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
(hits 201/9690) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<k-base-kind>
|
||||
(hits 3649/9490) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
(hits 3648/9489) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<k-irregular-kind-construction>
|
||||
(hits 2/16024) (matched: 'object-based rulebook') constraint DS = {r5} extremes [2, infinity)
|
||||
<k-kind-construction>
|
||||
|
@ -5340,7 +5340,7 @@
|
|||
<k-kind-of-kind> of kind <k-formal-variable>
|
||||
(hits 81/315) (matched: 'sayable value of kind k') constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity)
|
||||
|
||||
<k-base-kind> internal hits 3649/18980 nti r5 constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<k-base-kind> internal hits 3648/18978 nti r5 constraint CW = {r2, r5} extremes [1, infinity)
|
||||
|
||||
<k-irregular-kind-construction> hits 2/32048 nti r5 constraint DS = {r5} extremes [2, infinity)
|
||||
English:
|
||||
|
@ -5387,13 +5387,13 @@
|
|||
( <k-optional-term> )
|
||||
(hits 0/21) constraint DS = {r5} extremes [3, infinity)
|
||||
<article> <k-optional-term>
|
||||
(hits 9/28) (matched: 'a value of kind k') constraint (none) extremes [2, infinity)
|
||||
(hits 9/27) (matched: 'a value of kind k') constraint (none) extremes [2, infinity)
|
||||
nothing
|
||||
(hits 14/34) (matched: 'nothing') constraint CS = {r5} extremes [1, 1]
|
||||
(hits 14/35) (matched: 'nothing') constraint CS = {r5} extremes [1, 1]
|
||||
action
|
||||
(hits 0/20) constraint CS = {r5} extremes [1, 1]
|
||||
(hits 1/21) (matched: 'action') constraint CS = {r5} extremes [1, 1]
|
||||
<k-kind>
|
||||
(hits 39/39) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
|
||||
(hits 38/38) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
|
||||
|
||||
<k-tupled-term> hits 15/30 nti r5 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
|
@ -5416,7 +5416,7 @@
|
|||
<k-kind>
|
||||
(hits 100/224) (matched: 'sayable value') constraint (none) extremes [1, infinity)
|
||||
|
||||
<k-kind-variable> internal hits 1592/20088 nti r5 constraint CW = {r2, r5} extremes [1, 1]
|
||||
<k-kind-variable> internal hits 1592/20086 nti r5 constraint CW = {r2, r5} extremes [1, 1]
|
||||
|
||||
<k-formal-variable> internal hits 220/1418 nti r5 constraint CW = {r2, r5} extremes [1, 1]
|
||||
|
||||
|
@ -6677,7 +6677,7 @@
|
|||
action of <s-explicit-action>
|
||||
(hits 0/65) constraint DS = {24} extremes [3, infinity)
|
||||
<s-descriptive-type-expression>
|
||||
(hits 728/978) (matched: 'action name based rule producing nothing that varies') constraint (none) extremes [1, infinity)
|
||||
(hits 728/978) (matched: 'action based rule producing nothing that varies') constraint (none) extremes [1, infinity)
|
||||
<s-global-variable>
|
||||
(hits 6/250) (matched: 'language of play') constraint (none) extremes [1, infinity)
|
||||
|
||||
|
@ -7969,7 +7969,7 @@
|
|||
<s-variable-scope> variable/variables
|
||||
(hits 2/350) (matched: 'text variables') constraint DS = {11} extremes [2, infinity)
|
||||
<s-variable-scope> that/which vary/varies
|
||||
(hits 59/287) (matched: 'action name based rule producing nothing that varies') constraint DS = {11} extremes [3, infinity)
|
||||
(hits 59/287) (matched: 'action based rule producing nothing that varies') constraint DS = {11} extremes [3, infinity)
|
||||
<k-kind>
|
||||
(hits 2445/3832) (matched long text) constraint (none) extremes [1, infinity)
|
||||
<s-literal>
|
||||
|
@ -8009,12 +8009,12 @@
|
|||
global <s-variable-contents>
|
||||
(hits 0/4) constraint DS = {10} extremes [2, infinity)
|
||||
<s-variable-contents>
|
||||
(hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
(hits 61/62) (matched: 'action based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
|
||||
<s-variable-contents> hits 61/124 nti 18 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
<k-kind>
|
||||
(hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
(hits 61/62) (matched: 'action based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
<s-literal>
|
||||
(hits 0/1) constraint (none) extremes [1, infinity)
|
||||
<s-constant-value>
|
||||
|
@ -9061,31 +9061,31 @@
|
|||
waiting
|
||||
(hits 1/20) (matched: 'waiting') constraint CS = {13} extremes [1, 1]
|
||||
|
||||
<new-action-sentence-object> hits 90/1036 nti 24 constraint DS = {14} extremes [1, infinity)
|
||||
<new-action-sentence-object> hits 91/1036 nti 24 constraint DS = {14} extremes [1, infinity)
|
||||
English:
|
||||
<indefinite-article> <new-action-sentence-object-unarticled>
|
||||
(hits 90/334) (matched long text) constraint DS = {14} extremes [2, infinity)
|
||||
(hits 91/334) (matched long text) constraint DS = {14} extremes [2, infinity)
|
||||
<new-action-sentence-object-unarticled>
|
||||
(hits 0/244) constraint DS = {14} extremes [1, infinity)
|
||||
(hits 0/243) constraint DS = {14} extremes [1, infinity)
|
||||
|
||||
<new-action-sentence-object-unarticled> hits 90/934 nti 14 constraint DS = {14} extremes [1, infinity)
|
||||
<new-action-sentence-object-unarticled> hits 91/932 nti 14 constraint DS = {14} extremes [1, infinity)
|
||||
English:
|
||||
action based {...}
|
||||
(hits 0/338) constraint DS = {14} extremes [3, infinity)
|
||||
(hits 1/337) (matched: 'action based rule producing nothing that varies') constraint DS = {14} extremes [3, infinity)
|
||||
action <nounphrase-actionable>
|
||||
(hits 90/388) (matched long text) constraint DS = {14} extremes [1, infinity)
|
||||
(hits 90/386) (matched long text) constraint DS = {14} extremes [1, infinity)
|
||||
action
|
||||
constraint CS = {14} extremes [1, 1]
|
||||
|
||||
<nounphrase-actionable> hits 90/182 nti 25 constraint (none) extremes [0, infinity)
|
||||
<nounphrase-actionable> hits 90/180 nti 25 constraint (none) extremes [0, infinity)
|
||||
English:
|
||||
^<variable-creation-tail>
|
||||
(hits 90/91) (matched long text) constraint (none) extremes [0, infinity)
|
||||
(hits 90/90) (matched long text) constraint (none) extremes [0, infinity)
|
||||
|
||||
<variable-creation-tail> hits 1/182 nti 15 constraint DS = {15} extremes [1, infinity)
|
||||
<variable-creation-tail> hits 0/180 nti 15 constraint DS = {15} extremes [1, infinity)
|
||||
English:
|
||||
{***} that/which vary/varies
|
||||
(hits 1/91) (matched: 'name based rule producing nothing that varies') constraint DS = {15} extremes [2, infinity)
|
||||
(hits 0/90) constraint DS = {15} extremes [2, infinity)
|
||||
{***} variable
|
||||
(hits 0/90) constraint DS = {15} extremes [1, infinity)
|
||||
|
||||
|
|
|
@ -379,12 +379,12 @@ drawing up the index, and so on.
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Kinds::get_variable_number</span><button class="popup" onclick="togglePopup('usagePopup10')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup10">Usage of <span class="code-font"><span class="function-syntax">Kinds::get_variable_number</span></span>:<br/><a href="2-knd.html#SP17">§17</a>, <a href="2-knd.html#SP24">§24</a><br/>The Lattice of Kinds - <a href="2-tlok.html#SP13">§13</a>, <a href="2-tlok.html#SP13_6">§13.6</a><br/>Describing Kinds - <a href="2-dk.html#SP24_1_2">§24.1.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Kinds::get_variable_number</span><button class="popup" onclick="togglePopup('usagePopup10')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup10">Usage of <span class="code-font"><span class="function-syntax">Kinds::get_variable_number</span></span>:<br/><a href="2-knd.html#SP17">§17</a>, <a href="2-knd.html#SP24">§24</a><br/>The Lattice of Kinds - <a href="2-tlok.html#SP13">§13</a>, <a href="2-tlok.html#SP13_7">§13.7</a><br/>Describing Kinds - <a href="2-dk.html#SP24_1_2">§24.1.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</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">K</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">K</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax"> == </span><span class="identifier-syntax">CON_KIND_VARIABLE</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">K</span><span class="plain-syntax">-></span><span class="element-syntax">kind_variable_number</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> -1;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
|
||||
<span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="function-syntax">Kinds::get_variable_stipulation</span><button class="popup" onclick="togglePopup('usagePopup11')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup11">Usage of <span class="code-font"><span class="function-syntax">Kinds::get_variable_stipulation</span></span>:<br/>The Lattice of Kinds - <a href="2-tlok.html#SP13_6">§13.6</a>, <a href="2-tlok.html#SP13_6_1">§13.6.1</a><br/>Describing Kinds - <a href="2-dk.html#SP24_1_2">§24.1.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="function-syntax">Kinds::get_variable_stipulation</span><button class="popup" onclick="togglePopup('usagePopup11')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup11">Usage of <span class="code-font"><span class="function-syntax">Kinds::get_variable_stipulation</span></span>:<br/>The Lattice of Kinds - <a href="2-tlok.html#SP13_7">§13.7</a>, <a href="2-tlok.html#SP13_7_1">§13.7.1</a><br/>Describing Kinds - <a href="2-dk.html#SP24_1_2">§24.1.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</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">K</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">K</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax"> == </span><span class="identifier-syntax">CON_KIND_VARIABLE</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">K</span><span class="plain-syntax">-></span><span class="element-syntax">kc_args</span><span class="plain-syntax">[0];</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
|
@ -708,7 +708,7 @@ to the kind "number" even if that's the current value of X.
|
|||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Kinds::eq</span><button class="popup" onclick="togglePopup('usagePopup20')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup20">Usage of <span class="code-font"><span class="function-syntax">Kinds::eq</span></span>:<br/><a href="2-knd.html#SP17">§17</a>, <a href="2-knd.html#SP18">§18</a>, <a href="2-knd.html#SP21">§21</a>, <a href="2-knd.html#SP25">§25</a><br/>The Lattice of Kinds - <a href="2-tlok.html#SP6">§6</a>, <a href="2-tlok.html#SP7_1">§7.1</a>, <a href="2-tlok.html#SP7_2">§7.2</a>, <a href="2-tlok.html#SP13_1">§13.1</a>, <a href="2-tlok.html#SP13_2">§13.2</a>, <a href="2-tlok.html#SP13_5">§13.5</a><br/>Describing Kinds - <a href="2-dk.html#SP24_1_2">§24.1.2</a>, <a href="2-dk.html#SP24_2">§24.2</a>, <a href="2-dk.html#SP24_3_1">§24.3.1</a>, <a href="2-dk.html#SP24_3_2">§24.3.2</a><br/>Using Kinds - <a href="2-uk.html#SP2">§2</a>, <a href="2-uk.html#SP4">§4</a><br/>Dimensions - <a href="3-dmn.html#SP15">§15</a>, <a href="3-dmn.html#SP20">§20</a>, <a href="3-dmn.html#SP21">§21</a>, <a href="3-dmn.html#SP24">§24</a>, <a href="3-dmn.html#SP29">§29</a>, <a href="3-dmn.html#SP31_2">§31.2</a><br/>Floating-Point Values - <a href="3-fv.html#SP1">§1</a><br/>Star Templates - <a href="4-st.html#SP4">§4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K1</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K2</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Kinds::eq</span><button class="popup" onclick="togglePopup('usagePopup20')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup20">Usage of <span class="code-font"><span class="function-syntax">Kinds::eq</span></span>:<br/><a href="2-knd.html#SP17">§17</a>, <a href="2-knd.html#SP18">§18</a>, <a href="2-knd.html#SP21">§21</a>, <a href="2-knd.html#SP25">§25</a><br/>The Lattice of Kinds - <a href="2-tlok.html#SP6">§6</a>, <a href="2-tlok.html#SP7_1">§7.1</a>, <a href="2-tlok.html#SP7_2">§7.2</a>, <a href="2-tlok.html#SP13_1">§13.1</a>, <a href="2-tlok.html#SP13_2">§13.2</a>, <a href="2-tlok.html#SP13_5">§13.5</a>, <a href="2-tlok.html#SP13_6">§13.6</a><br/>Describing Kinds - <a href="2-dk.html#SP24_1_2">§24.1.2</a>, <a href="2-dk.html#SP24_2">§24.2</a>, <a href="2-dk.html#SP24_3_1">§24.3.1</a>, <a href="2-dk.html#SP24_3_2">§24.3.2</a><br/>Using Kinds - <a href="2-uk.html#SP2">§2</a>, <a href="2-uk.html#SP4">§4</a><br/>Dimensions - <a href="3-dmn.html#SP15">§15</a>, <a href="3-dmn.html#SP20">§20</a>, <a href="3-dmn.html#SP21">§21</a>, <a href="3-dmn.html#SP24">§24</a>, <a href="3-dmn.html#SP29">§29</a>, <a href="3-dmn.html#SP31_2">§31.2</a><br/>Floating-Point Values - <a href="3-fv.html#SP1">§1</a><br/>Star Templates - <a href="4-st.html#SP4">§4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K1</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K2</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">K1</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) { </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">K2</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">; </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</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">K2</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</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">K1</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax"> != </span><span class="identifier-syntax">K2</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">;</span>
|
||||
|
@ -747,7 +747,6 @@ to the kind "number" even if that's the current value of X.
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">ALWAYS_MATCH</span><span class="plain-syntax">;</span>
|
||||
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">LOGIF</span><span class="plain-syntax">(</span><span class="identifier-syntax">KIND_CHECKING</span><span class="plain-syntax">, </span><span class="string-syntax">"(Is the kind %u compatible with %u?"</span><span class="plain-syntax">, </span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">);</span>
|
||||
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">switch</span><span class="plain-syntax">(</span><a href="2-tlok.html#SP13" class="function-link"><span class="function-syntax">Latticework::order_relation</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">)) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">NEVER_MATCH:</span><span class="plain-syntax"> </span><span class="identifier-syntax">LOGIF</span><span class="plain-syntax">(</span><span class="identifier-syntax">KIND_CHECKING</span><span class="plain-syntax">, </span><span class="string-syntax">" No)\n"</span><span class="plain-syntax">); </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">NEVER_MATCH</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">ALWAYS_MATCH:</span><span class="plain-syntax"> </span><span class="identifier-syntax">LOGIF</span><span class="plain-syntax">(</span><span class="identifier-syntax">KIND_CHECKING</span><span class="plain-syntax">, </span><span class="string-syntax">" Yes)\n"</span><span class="plain-syntax">); </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">ALWAYS_MATCH</span><span class="plain-syntax">;</span>
|
||||
|
|
|
@ -204,7 +204,7 @@ function is what tells us that the superkind of <span class="extract"><span clas
|
|||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="function-syntax">Latticework::super</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">Latticework::super</span></span>:<br/><a href="2-tlok.html#SP7">§7</a>, <a href="2-tlok.html#SP13_5">§13.5</a><br/>Kinds - <a href="2-knd.html#SP21">§21</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="function-syntax">Latticework::super</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">Latticework::super</span></span>:<br/><a href="2-tlok.html#SP7">§7</a>, <a href="2-tlok.html#SP13_6">§13.6</a><br/>Kinds - <a href="2-knd.html#SP21">§21</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_real_arithmetic_value</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">K_arithmetic_value</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_enumerated_value</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">K_understandable_value</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_arithmetic_value</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">K_understandable_value</span><span class="plain-syntax">;</span>
|
||||
|
@ -453,14 +453,14 @@ as appropriate.
|
|||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Latticework::order_relation</span><button class="popup" onclick="togglePopup('usagePopup2')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup2">Usage of <span class="code-font"><span class="function-syntax">Latticework::order_relation</span></span>:<br/><a href="2-tlok.html#SP13_1">§13.1</a>, <a href="2-tlok.html#SP13_4">§13.4</a>, <a href="2-tlok.html#SP13_6_1">§13.6.1</a>, <a href="2-tlok.html#SP13_6_2">§13.6.2</a><br/>Kinds - <a href="2-knd.html#SP25">§25</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">allow_casts</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Latticework::order_relation</span><button class="popup" onclick="togglePopup('usagePopup2')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup2">Usage of <span class="code-font"><span class="function-syntax">Latticework::order_relation</span></span>:<br/><a href="2-tlok.html#SP13_1">§13.1</a>, <a href="2-tlok.html#SP13_4">§13.4</a>, <a href="2-tlok.html#SP13_7_1">§13.7.1</a>, <a href="2-tlok.html#SP13_7_2">§13.7.2</a><br/>Kinds - <a href="2-knd.html#SP25">§25</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">allow_casts</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP12" class="function-link"><span class="function-syntax">Kinds::get_variable_number</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">to</span><span class="plain-syntax">) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">var_k</span><span class="plain-syntax"> = </span><span class="identifier-syntax">to</span><span class="plain-syntax">, *</span><span class="identifier-syntax">other_k</span><span class="plain-syntax"> = </span><span class="identifier-syntax">from</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_6" class="named-paragraph-link"><span class="named-paragraph">Deal separately with matches against kind variables</span><span class="named-paragraph-number">13.6</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_7" class="named-paragraph-link"><span class="named-paragraph">Deal separately with matches against kind variables</span><span class="named-paragraph-number">13.7</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP12" class="function-link"><span class="function-syntax">Kinds::get_variable_number</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">) > </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">var_k</span><span class="plain-syntax"> = </span><span class="identifier-syntax">from</span><span class="plain-syntax">, *</span><span class="identifier-syntax">other_k</span><span class="plain-syntax"> = </span><span class="identifier-syntax">to</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_6" class="named-paragraph-link"><span class="named-paragraph">Deal separately with matches against kind variables</span><span class="named-paragraph-number">13.6</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_7" class="named-paragraph-link"><span class="named-paragraph">Deal separately with matches against kind variables</span><span class="named-paragraph-number">13.7</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_1" class="named-paragraph-link"><span class="named-paragraph">Deal separately with the sayability of lists</span><span class="named-paragraph-number">13.1</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_2" class="named-paragraph-link"><span class="named-paragraph">Deal separately with the top and bottom of the lattice</span><span class="named-paragraph-number">13.2</span></a></span><span class="plain-syntax">;</span>
|
||||
|
@ -513,9 +513,11 @@ and, of course, "value".
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">arity</span><span class="plain-syntax"> = (</span><span class="identifier-syntax">f_a</span><span class="plain-syntax"> < </span><span class="identifier-syntax">t_a</span><span class="plain-syntax">)?</span><span class="identifier-syntax">f_a:t_a</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">o</span><span class="plain-syntax"> = </span><span class="constant-syntax">ALWAYS_MATCH</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</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax"> != </span><span class="identifier-syntax">to</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">o</span><span class="plain-syntax"> = </span><a href="2-tlok.html#SP13_5" class="function-link"><span class="function-syntax">Latticework::construct_compatible</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="identifier-syntax">allow_casts</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">o</span><span class="plain-syntax"> = </span><a href="2-tlok.html#SP13_6" class="function-link"><span class="function-syntax">Latticework::construct_compatible</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="identifier-syntax">allow_casts</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">, </span><span class="identifier-syntax">this_o</span><span class="plain-syntax"> = </span><span class="constant-syntax">NEVER_MATCH</span><span class="plain-syntax">, </span><span class="identifier-syntax">fallen</span><span class="plain-syntax"> = </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="identifier-syntax">i</span><span class="plain-syntax">=0; </span><span class="identifier-syntax">i</span><span class="plain-syntax"><</span><span class="identifier-syntax">arity</span><span class="plain-syntax">; </span><span class="identifier-syntax">i</span><span class="plain-syntax">++) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><a href="2-tlok.html#SP13_5" class="function-link"><span class="function-syntax">Latticework::vacuous</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">-></span><span class="element-syntax">kc_args</span><span class="plain-syntax">[</span><span class="identifier-syntax">i</span><span class="plain-syntax">])) && (</span><a href="2-tlok.html#SP13_5" class="function-link"><span class="function-syntax">Latticework::vacuous</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">to</span><span class="plain-syntax">-></span><span class="element-syntax">kc_args</span><span class="plain-syntax">[</span><span class="identifier-syntax">i</span><span class="plain-syntax">])))</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">continue</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-kc2.html#SP15" class="function-link"><span class="function-syntax">KindConstructors::variance</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax">, </span><span class="identifier-syntax">i</span><span class="plain-syntax">) == </span><span class="constant-syntax">COVARIANT</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">this_o</span><span class="plain-syntax"> = </span><a href="2-tlok.html#SP13" class="function-link"><span class="function-syntax">Latticework::order_relation</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">from</span><span class="plain-syntax">-></span><span class="element-syntax">kc_args</span><span class="plain-syntax">[</span><span class="identifier-syntax">i</span><span class="plain-syntax">], </span><span class="identifier-syntax">to</span><span class="plain-syntax">-></span><span class="element-syntax">kc_args</span><span class="plain-syntax">[</span><span class="identifier-syntax">i</span><span class="plain-syntax">], </span><span class="identifier-syntax">allow_casts</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
|
||||
|
@ -526,14 +528,22 @@ and, of course, "value".
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">SOMETIMES_MATCH:</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">o</span><span class="plain-syntax"> != </span><span class="constant-syntax">NEVER_MATCH</span><span class="plain-syntax">) { </span><span class="identifier-syntax">o</span><span class="plain-syntax"> = </span><span class="identifier-syntax">this_o</span><span class="plain-syntax">; </span><span class="identifier-syntax">fallen</span><span class="plain-syntax"> = </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">; } </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</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">o</span><span class="plain-syntax"> == </span><span class="identifier-syntax">fallen</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">to</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax"> != </span><span class="identifier-syntax">CON_list_of</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">NEVER_MATCH</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">fallen</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">to</span><span class="plain-syntax">-></span><span class="element-syntax">construct</span><span class="plain-syntax"> != </span><span class="identifier-syntax">CON_list_of</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">NEVER_MATCH</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">o</span><span class="plain-syntax">;</span>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="2-tlok.html#SP13">§13</a>.</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP13_5" class="paragraph-anchor"></a><b>§13.5. </b></p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Latticework::construct_compatible</span><button class="popup" onclick="togglePopup('usagePopup3')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup3">Usage of <span class="code-font"><span class="function-syntax">Latticework::construct_compatible</span></span>:<br/><a href="2-tlok.html#SP13_4">§13.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">allow_casts</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Latticework::vacuous</span><button class="popup" onclick="togglePopup('usagePopup3')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup3">Usage of <span class="code-font"><span class="function-syntax">Latticework::vacuous</span></span>:<br/><a href="2-tlok.html#SP13_4">§13.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_nil</span><span class="plain-syntax">)) || (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_void</span><span class="plain-syntax">))) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
</pre>
|
||||
<p class="commentary firstcommentary"><a id="SP13_6" class="paragraph-anchor"></a><b>§13.6. </b></p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Latticework::construct_compatible</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Latticework::construct_compatible</span></span>:<br/><a href="2-tlok.html#SP13_4">§13.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">allow_casts</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax"> = </span><span class="identifier-syntax">from</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">while</span><span class="plain-syntax"> (</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">to</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">ALWAYS_MATCH</span><span class="plain-syntax">;</span>
|
||||
|
@ -557,7 +567,7 @@ and, of course, "value".
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">NEVER_MATCH</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
</pre>
|
||||
<p class="commentary firstcommentary"><a id="SP13_6" class="paragraph-anchor"></a><b>§13.6. </b>Recall that kind variables are identified by a number in the range 1 ("A")
|
||||
<p class="commentary firstcommentary"><a id="SP13_7" class="paragraph-anchor"></a><b>§13.7. </b>Recall that kind variables are identified by a number in the range 1 ("A")
|
||||
to 26 ("Z"), and that it is also possible to assign them a domain, or a
|
||||
"declaration". This marks that they are free to take on a value, within
|
||||
that domain. For example, in
|
||||
|
@ -573,7 +583,7 @@ become any kind matching <span class="extract"><span class="extract-syntax">valu
|
|||
more restrictive declaration like <span class="extract"><span class="extract-syntax">arithmetic value</span></span>.)
|
||||
</p>
|
||||
|
||||
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal separately with matches against kind variables</span><span class="named-paragraph-number">13.6</span></span><span class="comment-syntax"> =</span>
|
||||
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal separately with matches against kind variables</span><span class="named-paragraph-number">13.7</span></span><span class="comment-syntax"> =</span>
|
||||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
|
@ -586,14 +596,14 @@ more restrictive declaration like <span class="extract"><span class="extract-syn
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">default:</span><span class="plain-syntax"> {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">vn</span><span class="plain-syntax"> = </span><a href="2-knd.html#SP12" class="function-link"><span class="function-syntax">Kinds::get_variable_number</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">var_k</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="2-knd.html#SP12" class="function-link"><span class="function-syntax">Kinds::get_variable_stipulation</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">var_k</span><span class="plain-syntax">))</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_6_1" class="named-paragraph-link"><span class="named-paragraph">Act on a declaration usage, where inference is allowed</span><span class="named-paragraph-number">13.6.1</span></a></span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_7_1" class="named-paragraph-link"><span class="named-paragraph">Act on a declaration usage, where inference is allowed</span><span class="named-paragraph-number">13.7.1</span></a></span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_6_2" class="named-paragraph-link"><span class="named-paragraph">Act on an ordinary usage, where inference is not allowed</span><span class="named-paragraph-number">13.6.2</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="2-tlok.html#SP13_7_2" class="named-paragraph-link"><span class="named-paragraph">Act on an ordinary usage, where inference is not allowed</span><span class="named-paragraph-number">13.7.2</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="2-tlok.html#SP13">§13</a> (twice).</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP13_6_1" class="paragraph-anchor"></a><b>§13.6.1. </b>When the specification matcher works on matching text such as
|
||||
<p class="commentary firstcommentary"><a id="SP13_7_1" class="paragraph-anchor"></a><b>§13.7.1. </b>When the specification matcher works on matching text such as
|
||||
</p>
|
||||
|
||||
<blockquote>
|
||||
|
@ -620,7 +630,7 @@ we verify that "23" is a <span class="extract"><span class="extract-syntax">K</s
|
|||
a declaration usage of the variable <span class="extract"><span class="extract-syntax">K</span></span>.
|
||||
</p>
|
||||
|
||||
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Act on a declaration usage, where inference is allowed</span><span class="named-paragraph-number">13.6.1</span></span><span class="comment-syntax"> =</span>
|
||||
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Act on a declaration usage, where inference is allowed</span><span class="named-paragraph-number">13.7.1</span></span><span class="comment-syntax"> =</span>
|
||||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
|
@ -640,13 +650,13 @@ a declaration usage of the variable <span class="extract"><span class="extract-s
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">MATCH_KIND_VARIABLES_AS_VALUES:</span><span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">ALWAYS_MATCH</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="2-tlok.html#SP13_6">§13.6</a>.</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP13_6_2" class="paragraph-anchor"></a><b>§13.6.2. </b>Whereas this is what happens when matching just <span class="extract"><span class="extract-syntax">K</span></span>. On the inference pass,
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="2-tlok.html#SP13_7">§13.7</a>.</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP13_7_2" class="paragraph-anchor"></a><b>§13.7.2. </b>Whereas this is what happens when matching just <span class="extract"><span class="extract-syntax">K</span></span>. On the inference pass,
|
||||
we always make a match, which is legitimate because we know we are going to
|
||||
make a value-checking pass later.
|
||||
</p>
|
||||
|
||||
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Act on an ordinary usage, where inference is not allowed</span><span class="named-paragraph-number">13.6.2</span></span><span class="comment-syntax"> =</span>
|
||||
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Act on an ordinary usage, where inference is not allowed</span><span class="named-paragraph-number">13.7.2</span></span><span class="comment-syntax"> =</span>
|
||||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
|
@ -662,7 +672,7 @@ make a value-checking pass later.
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">ALWAYS_MATCH</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="2-tlok.html#SP13_6">§13.6</a>.</li></ul>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="2-tlok.html#SP13_7">§13.7</a>.</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP14" class="paragraph-anchor"></a><b>§14. </b>It's easy to confused when writing a type checker, especially with variables
|
||||
getting in the way, so these logging functions can be helpful:
|
||||
</p>
|
||||
|
|
|
@ -108,23 +108,22 @@ MathJax = {
|
|||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Kinds::Behaviour::is_object</span><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><a href="2-knd.html#SP25" class="function-link"><span class="function-syntax">Kinds::conforms_to</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_object</span><span class="plain-syntax">)) && (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_nil</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) && (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_void</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">))</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><a href="2-knd.html#SP25" class="function-link"><span class="function-syntax">Kinds::conforms_to</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_object</span><span class="plain-syntax">)) &&</span>
|
||||
<span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_nil</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) && (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_void</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">))</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Kinds::Behaviour::is_subkind_of_object</span><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><a href="2-knd.html#SP25" class="function-link"><span class="function-syntax">Kinds::conforms_to</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_object</span><span class="plain-syntax">)) && (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_object</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) &&</span>
|
||||
<span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_nil</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) &&</span>
|
||||
<span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_void</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">))</span>
|
||||
<span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_nil</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) && (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_void</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">))</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Kinds::Behaviour::is_object_of_kind</span><span class="plain-syntax">(</span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">L</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><a href="2-knd.html#SP25" class="function-link"><span class="function-syntax">Kinds::conforms_to</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_object</span><span class="plain-syntax">)) && (</span><a href="2-knd.html#SP25" class="function-link"><span class="function-syntax">Kinds::conforms_to</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="plain-syntax">)) &&</span>
|
||||
<span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_nil</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) &&</span>
|
||||
<span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_void</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">))</span>
|
||||
<span class="plain-syntax"> (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_nil</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) && (</span><a href="2-knd.html#SP24" class="function-link"><span class="function-syntax">Kinds::eq</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_void</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">))</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
|
|
|
@ -584,7 +584,7 @@ group) which it's an instance of: value, word value, arithmetic value, and so on
|
|||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">KindConstructors::find_cast</span><button class="popup" onclick="togglePopup('usagePopup20')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup20">Usage of <span class="code-font"><span class="function-syntax">KindConstructors::find_cast</span></span>:<br/><a href="4-kc2.html#SP20">§20</a><br/>The Lattice of Kinds - <a href="2-tlok.html#SP13_5">§13.5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind_constructor</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind_constructor</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">KindConstructors::find_cast</span><button class="popup" onclick="togglePopup('usagePopup20')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup20">Usage of <span class="code-font"><span class="function-syntax">KindConstructors::find_cast</span></span>:<br/><a href="4-kc2.html#SP20">§20</a><br/>The Lattice of Kinds - <a href="2-tlok.html#SP13_6">§13.6</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">kind_constructor</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">, </span><span class="reserved-syntax">kind_constructor</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to</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</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">kind_constructor_casting_rule</span><span class="plain-syntax"> *</span><span class="identifier-syntax">dtcr</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="identifier-syntax">dtcr</span><span class="plain-syntax"> = </span><span class="identifier-syntax">to</span><span class="plain-syntax">-></span><span class="element-syntax">first_casting_rule</span><span class="plain-syntax">; </span><span class="identifier-syntax">dtcr</span><span class="plain-syntax">; </span><span class="identifier-syntax">dtcr</span><span class="plain-syntax"> = </span><span class="identifier-syntax">dtcr</span><span class="plain-syntax">-></span><span class="element-syntax">next_casting_rule</span><span class="plain-syntax">) {</span>
|
||||
|
|
|
@ -188,14 +188,14 @@ number of successes.
|
|||
<span class="plain-syntax"> 29 words have a middle list: longest belongs to to (with 4 meanings)</span>
|
||||
<span class="plain-syntax"> 108 words have a subset list: longest belongs to street (with 4 meanings)</span>
|
||||
|
||||
<span class="plain-syntax">Number of attempts to retrieve: 106491</span>
|
||||
<span class="plain-syntax">Number of attempts to retrieve: 106490</span>
|
||||
<span class="plain-syntax"> of which unsuccessful: 88837</span>
|
||||
<span class="plain-syntax"> of which successful: 17654</span>
|
||||
<span class="plain-syntax"> of which successful: 17653</span>
|
||||
|
||||
<span class="plain-syntax">Total attempts to match against excerpt meanings: 260962</span>
|
||||
<span class="plain-syntax"> of which, total with incorrect hash codes: 238885</span>
|
||||
<span class="plain-syntax"> of which, total with correct hash codes: 22077</span>
|
||||
<span class="plain-syntax"> of which, total which matched: 19336</span>
|
||||
<span class="plain-syntax">Total attempts to match against excerpt meanings: 260959</span>
|
||||
<span class="plain-syntax"> of which, total with incorrect hash codes: 238883</span>
|
||||
<span class="plain-syntax"> of which, total with correct hash codes: 22076</span>
|
||||
<span class="plain-syntax"> of which, total which matched: 19335</span>
|
||||
</pre>
|
||||
<nav role="progress"><div class="progresscontainer">
|
||||
<ul class="progressbar"><li class="progressprevoff">❮</li><li class="progresscurrentchapter">P</li><li class="progresscurrent">wtmd</li><li class="progresssection"><a href="P-htitm.html">htitm</a></li><li class="progresschapter"><a href="1-lm.html">1</a></li><li class="progresschapter"><a href="2-em.html">2</a></li><li class="progressnext"><a href="P-htitm.html">❯</a></li></ul></div>
|
||||
|
|
|
@ -405,6 +405,9 @@ the directive type as 0.
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">Characters::is_whitespace</span><span class="plain-syntax">(</span><span class="identifier-syntax">Str::get</span><span class="plain-syntax">(</span><span class="identifier-syntax">pos</span><span class="plain-syntax">)) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">I6_dir</span><span class="plain-syntax"> = </span><span class="identifier-syntax">MYSTERY_PLM</span><span class="plain-syntax">;</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">I6_dir</span><span class="plain-syntax"> == </span><span class="identifier-syntax">MYSTERY_PLM</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> (*(</span><span class="identifier-syntax">docket</span><span class="plain-syntax">-></span><span class="identifier-syntax">error_callback</span><span class="plain-syntax">))(</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"this Inform 6 directive is not supported in kits or '(-' inclusions: '%S'"</span><span class="plain-syntax">, </span><span class="identifier-syntax">R</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Regexp::dispose_of</span><span class="plain-syntax">(&</span><span class="identifier-syntax">mr</span><span class="plain-syntax">);</span>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="3-ps.html#SP6">§6</a>.</li></ul>
|
||||
|
|
|
@ -447,7 +447,7 @@ as their meanings. See the test case <span class="extract"><span class="extract-
|
|||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">packaging_state</span><span class="plain-syntax"> </span><span class="identifier-syntax">save</span><span class="plain-syntax"> = </span><a href="2-ea.html#SP2" class="function-link"><span class="function-syntax">EmitArrays::begin_unchecked</span></a><span class="plain-syntax">(</span><a href="5-rlt.html#SP4" class="function-link"><span class="function-syntax">RTRelations::iname</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">bp</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">ExplicitRelations::stored_dynamically</span><span class="plain-syntax">(</span><span class="identifier-syntax">bp</span><span class="plain-syntax">)) {</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ea.html#SP4" class="function-link"><span class="function-syntax">EmitArrays::numeric_entry</span></a><span class="plain-syntax">((</span><span class="identifier-syntax">inter_ti</span><span class="plain-syntax">) </span><span class="constant-syntax">1</span><span class="plain-syntax">); </span><span class="comment-syntax"> meaning one entry, which is 0; to be filled in later</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ea.html#SP4" class="function-link"><span class="function-syntax">EmitArrays::numeric_entry</span></a><span class="plain-syntax">((</span><span class="identifier-syntax">inter_ti</span><span class="plain-syntax">) </span><span class="constant-syntax">1</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
|
||||
<span class="plain-syntax"> </span><a href="2-th.html#SP6" class="function-link"><span class="function-syntax">TheHeap::emit_block_value_header</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">BinaryPredicates::kind</span><span class="plain-syntax">(</span><span class="identifier-syntax">bp</span><span class="plain-syntax">), </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">, </span><span class="constant-syntax">8</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ea.html#SP4" class="function-link"><span class="function-syntax">EmitArrays::null_entry</span></a><span class="plain-syntax">();</span>
|
||||
|
@ -625,7 +625,6 @@ as their meanings. See the test case <span class="extract"><span class="extract-
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">LocalVariables::declare</span><span class="plain-syntax">(</span><span class="identifier-syntax">Z4_lv</span><span class="plain-syntax">);</span>
|
||||
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">annotated_i6_schema</span><span class="plain-syntax"> </span><span class="identifier-syntax">asch</span><span class="plain-syntax">; </span><span class="identifier-syntax">i6_schema</span><span class="plain-syntax"> *</span><span class="identifier-syntax">i6s</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
|
||||
|
||||
<span class="plain-syntax"> </span><a href="2-ec.html#SP13" class="function-link"><span class="function-syntax">EmitCode::inv</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">SWITCH_BIP</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ec.html#SP3" class="function-link"><span class="function-syntax">EmitCode::down</span></a><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> </span><a href="2-ec.html#SP7" class="function-link"><span class="function-syntax">EmitCode::val_symbol</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">K_value</span><span class="plain-syntax">, </span><span class="identifier-syntax">task_s</span><span class="plain-syntax">);</span>
|
||||
|
|
|
@ -72,7 +72,7 @@ for maintainers of Inform and may change at any time without notice.
|
|||
<p class="commentary firstcommentary"><a id="SP2" class="paragraph-anchor"></a><b>§2. </b>In working out what the compiler is doing (or has just done), the debugging log
|
||||
is always the first thing to investigate. This a text file like a running
|
||||
journal of what the compiler is doing; if it halts partway, either with problem
|
||||
messages or an internal error, then the log is still written up that point, and
|
||||
messages or an internal error, then the log is still written up to that point, and
|
||||
can be revealing. The log can be viewed in the Inform apps, but usually
|
||||
only if an "advanced" preference setting has been ticked. Once that is done,
|
||||
the log appears as one of the tabs in the Results pane after each compilation
|
||||
|
|
|
@ -141,7 +141,7 @@ meanings from sentence to sentence.
|
|||
<span class="identifier-syntax">The</span><span class="plain-syntax"> </span><span class="identifier-syntax">noun</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">documented</span><span class="plain-syntax"> </span><span class="identifier-syntax">at</span><span class="plain-syntax"> </span><span class="identifier-syntax">var_noun</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">is</span><span class="plain-syntax"> </span><span class="identifier-syntax">an</span><span class="plain-syntax"> </span><span class="identifier-syntax">object</span><span class="plain-syntax"> </span><span class="identifier-syntax">that</span><span class="plain-syntax"> </span><span class="identifier-syntax">varies</span><span class="plain-syntax">.</span>
|
||||
<span class="identifier-syntax">The</span><span class="plain-syntax"> </span><span class="identifier-syntax">second</span><span class="plain-syntax"> </span><span class="identifier-syntax">noun</span><span class="plain-syntax"> </span><span class="identifier-syntax">is</span><span class="plain-syntax"> </span><span class="identifier-syntax">an</span><span class="plain-syntax"> </span><span class="identifier-syntax">object</span><span class="plain-syntax"> </span><span class="identifier-syntax">that</span><span class="plain-syntax"> </span><span class="identifier-syntax">varies</span><span class="plain-syntax">.</span>
|
||||
<span class="identifier-syntax">The</span><span class="plain-syntax"> </span><span class="identifier-syntax">person</span><span class="plain-syntax"> </span><span class="identifier-syntax">asked</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">documented</span><span class="plain-syntax"> </span><span class="identifier-syntax">at</span><span class="plain-syntax"> </span><span class="identifier-syntax">var_person_asked</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">is</span><span class="plain-syntax"> </span><span class="identifier-syntax">an</span><span class="plain-syntax"> </span><span class="identifier-syntax">object</span><span class="plain-syntax"> </span><span class="identifier-syntax">that</span><span class="plain-syntax"> </span><span class="identifier-syntax">varies</span><span class="plain-syntax">.</span>
|
||||
<span class="identifier-syntax">The</span><span class="plain-syntax"> </span><span class="identifier-syntax">reason</span><span class="plain-syntax"> </span><span class="identifier-syntax">the</span><span class="plain-syntax"> </span><span class="identifier-syntax">action</span><span class="plain-syntax"> </span><span class="identifier-syntax">failed</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">documented</span><span class="plain-syntax"> </span><span class="identifier-syntax">at</span><span class="plain-syntax"> </span><span class="identifier-syntax">var_reason</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">is</span><span class="plain-syntax"> </span><span class="identifier-syntax">an</span><span class="plain-syntax"> </span><span class="identifier-syntax">action</span><span class="plain-syntax"> </span><span class="identifier-syntax">name</span>
|
||||
<span class="identifier-syntax">The</span><span class="plain-syntax"> </span><span class="identifier-syntax">reason</span><span class="plain-syntax"> </span><span class="identifier-syntax">the</span><span class="plain-syntax"> </span><span class="identifier-syntax">action</span><span class="plain-syntax"> </span><span class="identifier-syntax">failed</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">documented</span><span class="plain-syntax"> </span><span class="identifier-syntax">at</span><span class="plain-syntax"> </span><span class="identifier-syntax">var_reason</span><span class="plain-syntax"> -- </span><span class="identifier-syntax">is</span><span class="plain-syntax"> </span><span class="identifier-syntax">an</span><span class="plain-syntax"> </span><span class="identifier-syntax">action</span>
|
||||
<span class="identifier-syntax">based</span><span class="plain-syntax"> </span><span class="identifier-syntax">rule</span><span class="plain-syntax"> </span><span class="identifier-syntax">producing</span><span class="plain-syntax"> </span><span class="identifier-syntax">nothing</span><span class="plain-syntax"> </span><span class="identifier-syntax">that</span><span class="plain-syntax"> </span><span class="identifier-syntax">varies</span><span class="plain-syntax">.</span>
|
||||
<span class="identifier-syntax">The</span><span class="plain-syntax"> </span><span class="identifier-syntax">item</span><span class="plain-syntax"> </span><span class="identifier-syntax">described</span><span class="plain-syntax"> </span><span class="identifier-syntax">is</span><span class="plain-syntax"> </span><span class="identifier-syntax">an</span><span class="plain-syntax"> </span><span class="identifier-syntax">object</span><span class="plain-syntax"> </span><span class="identifier-syntax">that</span><span class="plain-syntax"> </span><span class="identifier-syntax">varies</span><span class="plain-syntax">.</span>
|
||||
|
||||
|
|
|
@ -178,7 +178,8 @@ extension <span class="extract"><span class="extract-syntax">.i7x</span></span>.
|
|||
drafts of inblorb allowed it too, but this caused problems with emacs backup
|
||||
files (with filenames ending <span class="extract"><span class="extract-syntax">~</span></span>) being picked up instead of the extension
|
||||
files they were backing up. So inblorb now recognises only <span class="extract"><span class="extract-syntax">.i7x</span></span> files as
|
||||
extensions.
|
||||
extensions. Similarly, another bad emacs habit is to write hidden symlinks,
|
||||
with leafnames beginning <span class="extract"><span class="extract-syntax">.</span></span>, so we reject those too.
|
||||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
|
@ -226,7 +227,8 @@ extensions.
|
|||
<span class="plain-syntax"> </span><span class="reserved-syntax">inbuild_requirement</span><span class="plain-syntax"> *</span><span class="identifier-syntax">req</span><span class="plain-syntax">, </span><span class="identifier-syntax">linked_list</span><span class="plain-syntax"> *</span><span class="identifier-syntax">search_results</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">fext</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">Filenames::write_extension</span><span class="plain-syntax">(</span><span class="identifier-syntax">fext</span><span class="plain-syntax">, </span><span class="identifier-syntax">F</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">Str::eq_insensitive</span><span class="plain-syntax">(</span><span class="identifier-syntax">fext</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">".i7x"</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">Str::eq_insensitive</span><span class="plain-syntax">(</span><span class="identifier-syntax">fext</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">".i7x"</span><span class="plain-syntax">)) &&</span>
|
||||
<span class="plain-syntax"> (</span><span class="identifier-syntax">Str::get_first_char</span><span class="plain-syntax">(</span><span class="identifier-syntax">Filenames::get_leafname</span><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">)) != </span><span class="character-syntax">'.'</span><span class="plain-syntax">)) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inbuild_copy</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><a href="4-em.html#SP5" class="function-link"><span class="function-syntax">ExtensionManager::claim_file_as_copy</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">F</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">C</span><span class="plain-syntax">) && (</span><a href="2-rqr.html#SP7" class="function-link"><span class="function-syntax">Requirements::meets</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">-></span><span class="element-syntax">edition</span><span class="plain-syntax">, </span><span class="identifier-syntax">req</span><span class="plain-syntax">))) {</span>
|
||||
<span class="plain-syntax"> </span><a href="2-nst.html#SP6" class="function-link"><span class="function-syntax">Nests::add_search_result</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">search_results</span><span class="plain-syntax">, </span><span class="identifier-syntax">N</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">, </span><span class="identifier-syntax">req</span><span class="plain-syntax">);</span>
|
||||
|
|
|
@ -113,7 +113,8 @@ extension |.i7x|. This was allowed in the early days of Inform 7, and early
|
|||
drafts of inblorb allowed it too, but this caused problems with emacs backup
|
||||
files (with filenames ending |~|) being picked up instead of the extension
|
||||
files they were backing up. So inblorb now recognises only |.i7x| files as
|
||||
extensions.
|
||||
extensions. Similarly, another bad emacs habit is to write hidden symlinks,
|
||||
with leafnames beginning |.|, so we reject those too.
|
||||
|
||||
=
|
||||
void ExtensionManager::search_nest_for(inbuild_genre *gen, inbuild_nest *N,
|
||||
|
@ -160,7 +161,8 @@ void ExtensionManager::search_nest_for_single_file(filename *F, inbuild_nest *N,
|
|||
inbuild_requirement *req, linked_list *search_results) {
|
||||
TEMPORARY_TEXT(fext)
|
||||
Filenames::write_extension(fext, F);
|
||||
if (Str::eq_insensitive(fext, I".i7x")) {
|
||||
if ((Str::eq_insensitive(fext, I".i7x")) &&
|
||||
(Str::get_first_char(Filenames::get_leafname(F)) != '.')) {
|
||||
inbuild_copy *C = ExtensionManager::claim_file_as_copy(F);
|
||||
if ((C) && (Requirements::meets(C->edition, req))) {
|
||||
Nests::add_search_result(search_results, N, C, req);
|
||||
|
|
|
@ -4764,21 +4764,21 @@
|
|||
{...}
|
||||
constraint (none) extremes [1, infinity)
|
||||
|
||||
<optional-article> hits 83030/166060 nti 15 constraint (none) extremes [1, infinity)
|
||||
<optional-article> hits 83029/166058 nti 15 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
<article> {...}
|
||||
(hits 16068/47449) (matched long text) constraint (none) extremes [2, infinity)
|
||||
(hits 16068/47448) (matched long text) constraint (none) extremes [2, infinity)
|
||||
{...}
|
||||
(hits 66962/66962) (matched long text) constraint (none) extremes [1, infinity)
|
||||
(hits 66961/66961) (matched long text) constraint (none) extremes [1, infinity)
|
||||
|
||||
<compulsory-article> nti 16 constraint (none) extremes [2, infinity)
|
||||
English:
|
||||
<article> {...}
|
||||
constraint (none) extremes [2, infinity)
|
||||
|
||||
<article> internal hits 16522/98958 nti r2 constraint (none) extremes [1, 1]
|
||||
<article> internal hits 16522/98954 nti r2 constraint (none) extremes [1, 1]
|
||||
|
||||
<definite-article> internal hits 20353/236436 nti r2 constraint (none) extremes [1, 1]
|
||||
<definite-article> internal hits 20353/236434 nti r2 constraint (none) extremes [1, 1]
|
||||
|
||||
<indefinite-article> internal hits 2350/41386 nti r2 constraint (none) extremes [1, 1]
|
||||
|
||||
|
@ -5055,7 +5055,7 @@
|
|||
{...}
|
||||
(hits 99/2082) (matched: '"(considering the first sixteen objects only)[command clarification break]" ( a )') constraint (none) extremes [1, infinity)
|
||||
<if-not-cap> <indefinite-article> <np-unparsed>
|
||||
(hits 322/1418) (matched long text) constraint (none) extremes [2, infinity)
|
||||
(hits 322/1418) (matched: 'an action based rule producing nothing that varies') constraint (none) extremes [2, infinity)
|
||||
<if-not-cap> <definite-article> <np-unparsed>
|
||||
(hits 661/1096) (matched long text) constraint (none) extremes [2, infinity)
|
||||
<np-unparsed>
|
||||
|
@ -5185,16 +5185,16 @@
|
|||
<np-nonrelative>
|
||||
(hits 431/431) (matched long text) constraint (none) extremes [1, infinity)
|
||||
|
||||
<np-with-or-having-tail> hits 0/10194 nti 30 constraint DS = {30} extremes [2, infinity)
|
||||
<np-with-or-having-tail> hits 0/10192 nti 30 constraint DS = {30} extremes [2, infinity)
|
||||
English:
|
||||
it with action {***}
|
||||
(hits 0/3875) constraint DS = {30} extremes [3, infinity)
|
||||
(hits 0/3874) constraint DS = {30} extremes [3, infinity)
|
||||
{with/having} (/) {***}
|
||||
(hits 0/4068) constraint DS = {30} extremes [2, infinity)
|
||||
(hits 0/4067) constraint DS = {30} extremes [2, infinity)
|
||||
{with/having} {...} ( <response-letter> )
|
||||
(hits 0/3483) constraint DS = {30} extremes [5, infinity)
|
||||
(hits 0/3482) constraint DS = {30} extremes [5, infinity)
|
||||
{with/having} <np-new-property-list>
|
||||
(hits 0/4068) constraint DS = {30} extremes [2, infinity)
|
||||
(hits 0/4067) constraint DS = {30} extremes [2, infinity)
|
||||
|
||||
<np-new-property-list> nti 19 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
|
@ -5217,12 +5217,12 @@
|
|||
{...}
|
||||
constraint (none) extremes [1, infinity)
|
||||
|
||||
<np-and-tail> hits 174/3554 nti 6 constraint DS = {6} extremes [1, infinity)
|
||||
<np-and-tail> hits 174/3552 nti 6 constraint DS = {6} extremes [1, infinity)
|
||||
English:
|
||||
, _{and} <np-operand>
|
||||
(hits 8/1080) (matched: ', and didn't understand addressee's last name error') constraint DS = {6} extremes [2, infinity)
|
||||
(hits 8/1079) (matched: ', and didn't understand addressee's last name error') constraint DS = {6} extremes [2, infinity)
|
||||
_{,/and} <np-operand>
|
||||
(hits 166/1278) (matched long text) constraint DS = {6} extremes [1, infinity)
|
||||
(hits 166/1277) (matched long text) constraint DS = {6} extremes [1, infinity)
|
||||
|
||||
<np-kind-phrase> hits 30/516 nti 21 constraint DS = {7} extremes [1, infinity)
|
||||
English:
|
||||
|
@ -5267,7 +5267,7 @@
|
|||
{...} called {...}
|
||||
constraint DS = {12} extremes [3, infinity)
|
||||
|
||||
<np-x-of-y> hits 196/9062 nti 13 constraint DS = {13} extremes [2, infinity)
|
||||
<np-x-of-y> hits 196/9056 nti 13 constraint DS = {13} extremes [2, infinity)
|
||||
English:
|
||||
of {...}
|
||||
(hits 196/2552) (matched: 'of day -- documented at var_time --') constraint DS = {13} extremes [2, infinity)
|
||||
|
@ -5285,7 +5285,7 @@
|
|||
grammatical case
|
||||
(hits 1/1) (matched: 'grammatical case') constraint CS = {14} extremes [2, 2]
|
||||
|
||||
<if-parsing-phrase-tokens> internal hits 2478/41948 nti 27 constraint (none) extremes [0, 0]
|
||||
<if-parsing-phrase-tokens> internal hits 2478/41944 nti 27 constraint (none) extremes [0, 0]
|
||||
|
||||
<k-kind-prototype> internal hits 165/330 nti 28 constraint (none) extremes [1, infinity)
|
||||
|
||||
|
@ -5311,16 +5311,16 @@
|
|||
<k-kind>
|
||||
(hits 5/5) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
|
||||
|
||||
<k-kind> hits 5803/103678 nti r5 constraint (none) extremes [1, infinity)
|
||||
<k-kind> hits 5802/103676 nti r5 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
( <k-kind> )
|
||||
(hits 0/2047) constraint DS = {r5} & CW = {r2, r5} extremes [3, infinity)
|
||||
^<if-parsing-phrase-tokens> <k-kind-variable>
|
||||
(hits 1592/11283) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
(hits 1592/11282) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<if-parsing-phrase-tokens> <k-variable-definition>
|
||||
(hits 201/9691) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
(hits 201/9690) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<k-base-kind>
|
||||
(hits 3649/9490) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
(hits 3648/9489) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<k-irregular-kind-construction>
|
||||
(hits 2/16024) (matched: 'object-based rulebook') constraint DS = {r5} extremes [2, infinity)
|
||||
<k-kind-construction>
|
||||
|
@ -5340,7 +5340,7 @@
|
|||
<k-kind-of-kind> of kind <k-formal-variable>
|
||||
(hits 81/315) (matched: 'sayable value of kind k') constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity)
|
||||
|
||||
<k-base-kind> internal hits 3649/18980 nti r5 constraint CW = {r2, r5} extremes [1, infinity)
|
||||
<k-base-kind> internal hits 3648/18978 nti r5 constraint CW = {r2, r5} extremes [1, infinity)
|
||||
|
||||
<k-irregular-kind-construction> hits 2/32048 nti r5 constraint DS = {r5} extremes [2, infinity)
|
||||
English:
|
||||
|
@ -5387,13 +5387,13 @@
|
|||
( <k-optional-term> )
|
||||
(hits 0/21) constraint DS = {r5} extremes [3, infinity)
|
||||
<article> <k-optional-term>
|
||||
(hits 9/28) (matched: 'a value of kind k') constraint (none) extremes [2, infinity)
|
||||
(hits 9/27) (matched: 'a value of kind k') constraint (none) extremes [2, infinity)
|
||||
nothing
|
||||
(hits 14/34) (matched: 'nothing') constraint CS = {r5} extremes [1, 1]
|
||||
(hits 14/35) (matched: 'nothing') constraint CS = {r5} extremes [1, 1]
|
||||
action
|
||||
(hits 0/20) constraint CS = {r5} extremes [1, 1]
|
||||
(hits 1/21) (matched: 'action') constraint CS = {r5} extremes [1, 1]
|
||||
<k-kind>
|
||||
(hits 39/39) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
|
||||
(hits 38/38) (matched: 'value of kind k') constraint (none) extremes [1, infinity)
|
||||
|
||||
<k-tupled-term> hits 15/30 nti r5 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
|
@ -5416,7 +5416,7 @@
|
|||
<k-kind>
|
||||
(hits 100/224) (matched: 'sayable value') constraint (none) extremes [1, infinity)
|
||||
|
||||
<k-kind-variable> internal hits 1592/20088 nti r5 constraint CW = {r2, r5} extremes [1, 1]
|
||||
<k-kind-variable> internal hits 1592/20086 nti r5 constraint CW = {r2, r5} extremes [1, 1]
|
||||
|
||||
<k-formal-variable> internal hits 220/1418 nti r5 constraint CW = {r2, r5} extremes [1, 1]
|
||||
|
||||
|
@ -6677,7 +6677,7 @@
|
|||
action of <s-explicit-action>
|
||||
(hits 0/65) constraint DS = {24} extremes [3, infinity)
|
||||
<s-descriptive-type-expression>
|
||||
(hits 728/978) (matched: 'action name based rule producing nothing that varies') constraint (none) extremes [1, infinity)
|
||||
(hits 728/978) (matched: 'action based rule producing nothing that varies') constraint (none) extremes [1, infinity)
|
||||
<s-global-variable>
|
||||
(hits 6/250) (matched: 'language of play') constraint (none) extremes [1, infinity)
|
||||
|
||||
|
@ -7969,7 +7969,7 @@
|
|||
<s-variable-scope> variable/variables
|
||||
(hits 2/350) (matched: 'text variables') constraint DS = {11} extremes [2, infinity)
|
||||
<s-variable-scope> that/which vary/varies
|
||||
(hits 59/287) (matched: 'action name based rule producing nothing that varies') constraint DS = {11} extremes [3, infinity)
|
||||
(hits 59/287) (matched: 'action based rule producing nothing that varies') constraint DS = {11} extremes [3, infinity)
|
||||
<k-kind>
|
||||
(hits 2445/3832) (matched long text) constraint (none) extremes [1, infinity)
|
||||
<s-literal>
|
||||
|
@ -8009,12 +8009,12 @@
|
|||
global <s-variable-contents>
|
||||
(hits 0/4) constraint DS = {10} extremes [2, infinity)
|
||||
<s-variable-contents>
|
||||
(hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
(hits 61/62) (matched: 'action based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
|
||||
<s-variable-contents> hits 61/124 nti 18 constraint (none) extremes [1, infinity)
|
||||
English:
|
||||
<k-kind>
|
||||
(hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
(hits 61/62) (matched: 'action based rule producing nothing') constraint (none) extremes [1, infinity)
|
||||
<s-literal>
|
||||
(hits 0/1) constraint (none) extremes [1, infinity)
|
||||
<s-constant-value>
|
||||
|
@ -9061,31 +9061,31 @@
|
|||
waiting
|
||||
(hits 1/20) (matched: 'waiting') constraint CS = {13} extremes [1, 1]
|
||||
|
||||
<new-action-sentence-object> hits 90/1036 nti 24 constraint DS = {14} extremes [1, infinity)
|
||||
<new-action-sentence-object> hits 91/1036 nti 24 constraint DS = {14} extremes [1, infinity)
|
||||
English:
|
||||
<indefinite-article> <new-action-sentence-object-unarticled>
|
||||
(hits 90/334) (matched long text) constraint DS = {14} extremes [2, infinity)
|
||||
(hits 91/334) (matched long text) constraint DS = {14} extremes [2, infinity)
|
||||
<new-action-sentence-object-unarticled>
|
||||
(hits 0/244) constraint DS = {14} extremes [1, infinity)
|
||||
(hits 0/243) constraint DS = {14} extremes [1, infinity)
|
||||
|
||||
<new-action-sentence-object-unarticled> hits 90/934 nti 14 constraint DS = {14} extremes [1, infinity)
|
||||
<new-action-sentence-object-unarticled> hits 91/932 nti 14 constraint DS = {14} extremes [1, infinity)
|
||||
English:
|
||||
action based {...}
|
||||
(hits 0/338) constraint DS = {14} extremes [3, infinity)
|
||||
(hits 1/337) (matched: 'action based rule producing nothing that varies') constraint DS = {14} extremes [3, infinity)
|
||||
action <nounphrase-actionable>
|
||||
(hits 90/388) (matched long text) constraint DS = {14} extremes [1, infinity)
|
||||
(hits 90/386) (matched long text) constraint DS = {14} extremes [1, infinity)
|
||||
action
|
||||
constraint CS = {14} extremes [1, 1]
|
||||
|
||||
<nounphrase-actionable> hits 90/182 nti 25 constraint (none) extremes [0, infinity)
|
||||
<nounphrase-actionable> hits 90/180 nti 25 constraint (none) extremes [0, infinity)
|
||||
English:
|
||||
^<variable-creation-tail>
|
||||
(hits 90/91) (matched long text) constraint (none) extremes [0, infinity)
|
||||
(hits 90/90) (matched long text) constraint (none) extremes [0, infinity)
|
||||
|
||||
<variable-creation-tail> hits 1/182 nti 15 constraint DS = {15} extremes [1, infinity)
|
||||
<variable-creation-tail> hits 0/180 nti 15 constraint DS = {15} extremes [1, infinity)
|
||||
English:
|
||||
{***} that/which vary/varies
|
||||
(hits 1/91) (matched: 'name based rule producing nothing that varies') constraint DS = {15} extremes [2, infinity)
|
||||
(hits 0/90) constraint DS = {15} extremes [2, infinity)
|
||||
{***} variable
|
||||
(hits 0/90) constraint DS = {15} extremes [1, infinity)
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
100.0% in inform7 run
|
||||
71.1% in compilation to Inter
|
||||
50.8% in //Sequence::undertake_queued_tasks//
|
||||
4.8% in //MajorNodes::pre_pass//
|
||||
3.2% in //MajorNodes::pass_1//
|
||||
1.9% in //ImperativeDefinitions::assess_all//
|
||||
50.3% in //Sequence::undertake_queued_tasks//
|
||||
4.7% in //MajorNodes::pre_pass//
|
||||
3.5% in //MajorNodes::pass_1//
|
||||
1.8% in //ImperativeDefinitions::assess_all//
|
||||
1.8% in //RTPhrasebook::compile_entries//
|
||||
1.4% in //RTKindConstructors::compile//
|
||||
1.0% in //Sequence::lint_inter//
|
||||
|
@ -13,25 +13,20 @@
|
|||
0.4% in //Sequence::undertake_queued_tasks//
|
||||
0.4% in //Sequence::undertake_queued_tasks//
|
||||
0.2% in //CompletionModule::compile//
|
||||
0.2% in //InferenceSubjects::emit_all//
|
||||
0.2% in //RTKindConstructors::compile_permissions//
|
||||
0.1% in //InferenceSubjects::emit_all//
|
||||
0.1% in //Task::make_built_in_kind_constructors//
|
||||
0.1% in //Understand::traverse//
|
||||
0.1% in //World::stages_II_and_III//
|
||||
2.3% not specifically accounted for
|
||||
0.2% in //Task::make_built_in_kind_constructors//
|
||||
3.0% not specifically accounted for
|
||||
26.1% in running Inter pipeline
|
||||
10.0% in step 14/15: generate inform6 -> auto.inf
|
||||
5.8% in step 5/15: load-binary-kits
|
||||
5.8% in step 6/15: make-synoptic-module
|
||||
1.5% in step 9/15: make-identifiers-unique
|
||||
9.9% in step 14/15: generate inform6 -> auto.inf
|
||||
6.0% in step 6/15: make-synoptic-module
|
||||
5.6% in step 5/15: load-binary-kits
|
||||
1.4% in step 9/15: make-identifiers-unique
|
||||
0.4% in step 12/15: eliminate-redundant-operations
|
||||
0.4% in step 4/15: compile-splats
|
||||
0.3% in step 7/15: shorten-wiring
|
||||
0.3% in step 8/15: detect-indirect-calls
|
||||
0.4% in step 7/15: shorten-wiring
|
||||
0.2% in step 11/15: eliminate-redundant-labels
|
||||
0.1% in step 10/15: reconcile-verbs
|
||||
0.1% in step 2/15: parse-insertions
|
||||
0.1% in step 3/15: resolve-conditional-compilation
|
||||
0.6% not specifically accounted for
|
||||
2.3% in supervisor
|
||||
0.4% not specifically accounted for
|
||||
0.2% in step 8/15: detect-indirect-calls
|
||||
1.4% not specifically accounted for
|
||||
2.2% in supervisor
|
||||
0.5% not specifically accounted for
|
||||
|
|
|
@ -5,11 +5,11 @@ Size of lexicon: 3101 excerpt meanings
|
|||
29 words have a middle list: longest belongs to to (with 4 meanings)
|
||||
108 words have a subset list: longest belongs to street (with 4 meanings)
|
||||
|
||||
Number of attempts to retrieve: 106491
|
||||
Number of attempts to retrieve: 106490
|
||||
of which unsuccessful: 88837
|
||||
of which successful: 17654
|
||||
of which successful: 17653
|
||||
|
||||
Total attempts to match against excerpt meanings: 260962
|
||||
of which, total with incorrect hash codes: 238885
|
||||
of which, total with correct hash codes: 22077
|
||||
of which, total which matched: 19336
|
||||
Total attempts to match against excerpt meanings: 260959
|
||||
of which, total with incorrect hash codes: 238883
|
||||
of which, total with correct hash codes: 22076
|
||||
of which, total which matched: 19335
|
||||
|
|
Loading…
Reference in a new issue