force use of pandoc version >= 3.1.12.2
The `bin/pandoc-wrapper.sh` tool will verify that the ssytem has a recent enough version of `pandoc(1)`. We explain why we insist on `pandoc(1)`. version >= 3.1.12.2 in comments where the $PANDOC_MIN_VERSION is set. Added `--wrap=preserve` as a default argument to `pandoc(1)`. While this change will impact every HTML file generated, we believe this will improve the ability of someone to look at the generated HTML and correlate with the original markdown. Changed `bin/pandoc-wrapper.sh` VERSION from "1.4.2 2024-03-17" to "1.4.3 2024-03-18". Performed `make www` to achieve all of the above and to generate HTML using the new `--wrap=preserve` `pandoc(1)` mode.
This commit is contained in:
1 parent
9eb7a54e9f
commit
b0b212acb1
402 files changed
+37061
-55132
No files matched your search
+51
-81
@@ -130,8 +130,8 @@
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Qiming_HOU">Qiming HOU</a><br>
|
||||
Location: <a href="../../location.html#CN">CN</a> - <em>People’s
|
||||
Republic of China</em> (<em>China</em>) <br><br></li>
|
||||
Location: <a href="../../location.html#CN">CN</a> - <em>People’s Republic of China</em> (<em>China</em>)
|
||||
<br><br></li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
|
||||
@@ -145,8 +145,8 @@ Republic of China</em> (<em>China</em>) <br><br></li>
|
||||
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./hou</span> <span class="st">'expression'</span></span></code></pre></div>
|
||||
<h2 id="try">Try:</h2>
|
||||
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
|
||||
<p>As the script asks you, what does the last one mean? Can you get it
|
||||
to report a different value? Hint: it’s in this file, kind of.</p>
|
||||
<p>As the script asks you, what does the last one mean? Can you get it to report a
|
||||
different value? Hint: it’s in this file, kind of.</p>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>This self-documenting scientific calculator compiles clean with no
|
||||
warnings under the most strict pedantic mode of gcc and clang.</p>
|
||||
@@ -160,112 +160,82 @@ source code. What does it mean?</p>
|
||||
<div class="sourceCode" id="cb5"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="op">+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+</span></span></code></pre></div>
|
||||
<h3 id="self-documenting-source">Self documenting source</h3>
|
||||
<p>Comments would almost be redundant. :-}</p>
|
||||
<h3 id="the-ascii-art-is-valid-c-code">The ASCII art is valid C
|
||||
code</h3>
|
||||
<p>… and not just fancy formatted comment removed by the C
|
||||
Pre-processor.</p>
|
||||
<h3 id="the-only-multi-byte-strings-are-format-strings">The only
|
||||
multi-byte strings are format strings</h3>
|
||||
<p>The code does not contain some simple string-encoded lookup table for
|
||||
calculator operations.</p>
|
||||
<h3 id="example-input-and-output-in-the-source">Example input and output
|
||||
in the source</h3>
|
||||
<p>The example input and output in the C code is significant. Can you
|
||||
find out why?</p>
|
||||
<h3 id="the-ascii-art-is-valid-c-code">The ASCII art is valid C code</h3>
|
||||
<p>… and not just fancy formatted comment removed by the C Pre-processor.</p>
|
||||
<h3 id="the-only-multi-byte-strings-are-format-strings">The only multi-byte strings are format strings</h3>
|
||||
<p>The code does not contain some simple string-encoded lookup table for calculator
|
||||
operations.</p>
|
||||
<h3 id="example-input-and-output-in-the-source">Example input and output in the source</h3>
|
||||
<p>The example input and output in the C code is significant. Can you find out
|
||||
why?</p>
|
||||
<h3 id="the-button-layout">The button layout</h3>
|
||||
<p>The button layout in the C code is significant … not just a nice
|
||||
looking layout.</p>
|
||||
<p>The button layout in the C code is significant … not just a nice looking
|
||||
layout.</p>
|
||||
<h3 id="input-parsing">Input parsing</h3>
|
||||
<p>The parser is functionally equivalent to a normal arithmetic parser
|
||||
for all valid inputs. For another fun challenge: try to determine how it
|
||||
parses the command line argument.</p>
|
||||
<p>The parser is functionally equivalent to a normal arithmetic parser for all
|
||||
valid inputs. For another fun challenge: try to determine how it parses the
|
||||
command line argument.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<h3 id="obfuscations">Obfuscations</h3>
|
||||
<p>This program is designed to be self-documenting. It doesn’t just
|
||||
provide an example command line. It also provides the expected output
|
||||
and illustrates all supported functionality using embedded ASCII
|
||||
art.</p>
|
||||
<p>This program is designed to be self-documenting. It doesn’t just provide an
|
||||
example command line. It also provides the expected output and illustrates all
|
||||
supported functionality using embedded ASCII art.</p>
|
||||
<ul>
|
||||
<li>A few line numbers are significant and careless beautification will
|
||||
break the program.</li>
|
||||
<li>The entire ASCII art is valid code. The preprocessor won’t remove
|
||||
any part of it.</li>
|
||||
<li>The only strings longer than 1 byte are
|
||||
<code>printf(3)</code>/<code>sscanf(3)</code> format strings, even after
|
||||
preprocessing. No string-encoded lookup table is used.</li>
|
||||
<li>A few line numbers are significant and careless beautification will break the
|
||||
program.</li>
|
||||
<li>The entire ASCII art is valid code. The preprocessor won’t remove any part of it.</li>
|
||||
<li>The only strings longer than 1 byte are <code>printf(3)</code>/<code>sscanf(3)</code> format strings, even
|
||||
after preprocessing. No string-encoded lookup table is used.</li>
|
||||
<li>The example input and its expected output are both algorithmically
|
||||
significant.</li>
|
||||
<li>The button layout is also significant.</li>
|
||||
<li>The actual syntax being parsed is not that obvious, despite being
|
||||
functionally equivalent for all correct inputs.</li>
|
||||
<li>The actual syntax being parsed is not that obvious, despite being functionally
|
||||
equivalent for all correct inputs.</li>
|
||||
</ul>
|
||||
<h3 id="portability">Portability</h3>
|
||||
<ul>
|
||||
<li>This program requires <code>argv</code> to point to writable memory.
|
||||
It doesn’t require the actual <code>argv</code> strings to be writable,
|
||||
though.</li>
|
||||
<li>This program requires <code>argv</code> to point to writable memory. It doesn’t require
|
||||
the actual <code>argv</code> strings to be writable, though.</li>
|
||||
<li>This program requires ASCII.</li>
|
||||
<li>This program doesn’t work with <code>%e</code> style numbers like
|
||||
<code>1e-4</code>.</li>
|
||||
<li>Some seemingly redundant code works to eliminate warnings and evade
|
||||
a gcc bug.</li>
|
||||
<li>This program doesn’t work with <code>%e</code> style numbers like <code>1e-4</code>.</li>
|
||||
<li>Some seemingly redundant code works to eliminate warnings and evade a gcc bug.</li>
|
||||
</ul>
|
||||
<h3 id="spoilers">Spoilers</h3>
|
||||
<p>The parser parses function names, subtraction, and division as
|
||||
single-letter unary operators. A bitmask encoded hash table is used to
|
||||
check no-ops/digits and another hash function maps the ASCII to a
|
||||
function ordinal, which is then executed by the button panel.</p>
|
||||
<p>Both hash functions were found using a separate search program.
|
||||
Another program was used to find a way to format one hash function as
|
||||
example input such that it produces something resembling the bitmask
|
||||
hash table as part of its output.</p>
|
||||
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0
|
||||
License:</h2>
|
||||
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights
|
||||
Reserved. You are free to share and adapt this file under the terms of
|
||||
this license:</p>
|
||||
<p>The parser parses function names, subtraction, and division as single-letter
|
||||
unary operators. A bitmask encoded hash table is used to check no-ops/digits
|
||||
and another hash function maps the ASCII to a function ordinal, which is then
|
||||
executed by the button panel.</p>
|
||||
<p>Both hash functions were found using a separate search program. Another program
|
||||
was used to find a way to format one hash function as example input such that
|
||||
it produces something resembling the bitmask hash table as part of its output.</p>
|
||||
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0 License:</h2>
|
||||
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
|
||||
You are free to share and adapt this file under the terms of this license:</p>
|
||||
<pre><code>Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</code></pre>
|
||||
<p>For more information, see:
|
||||
https://creativecommons.org/licenses/by-sa/4.0/</p>
|
||||
<p>For more information, see: https://creativecommons.org/licenses/by-sa/4.0/</p>
|
||||
|
||||
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||||
<!-- START: this line starts content for HTML phase 22 by: bin/output-index-inventory.sh via bin/md2html.sh -->
|
||||
|
||||
<!-- START: this line starts content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
<h1 id="inventory-for-2011hou"><a name="inventory"></a>Inventory for
|
||||
2011/hou</h1>
|
||||
<h1 id="inventory-for-2011hou"><a name="inventory"></a>Inventory for 2011/hou</h1>
|
||||
<p><a href="#top">Jump to top</a></p>
|
||||
<h2 id="primary-files">Primary files</h2>
|
||||
<ul>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.c">hou.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.orig.c">hou.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a href="2011_hou.tar.bz2">2011_hou.tar.bz2</a> - download entry
|
||||
source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.c">hou.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.orig.c">hou.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="2011_hou.tar.bz2">2011_hou.tar.bz2</a> - download entry source</li>
|
||||
</ul>
|
||||
<h2 id="secondary-files">Secondary files</h2>
|
||||
<ul>
|
||||
<li><a href="index.html">index.html</a> - entry home page</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.gitignore">.gitignore</a>
|
||||
- list of files that should not be committed under git</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.gitignore">.gitignore</a> - list of files that should not be committed under git</li>
|
||||
<li><a href=".path">.path</a> - directory path from top directory</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
Reference in new issue
Block a user