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:
Landon Curt Noll committed 2024-03-18 01:26:39 -07:00
1 parent 9eb7a54e9f
commit b0b212acb1
402 files changed
+37061 -55132

No files matched your search

+38 -64
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Carlos_Duarte">Carlos
Duarte</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Carlos_Duarte">Carlos Duarte</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -140,23 +140,19 @@ Duarte</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<p>We recommend that you try the alternate version first so you can see
what this entry looked like back in 1995 (with a configurable speed).
See the <a href="#original-code">original code</a> section below for the
original entry.</p>
<p>We recommend that you try the alternate version first so you can see what this
entry looked like back in 1995 (with a configurable speed). See the <a href="#original-code">original
code</a> section below for the original entry.</p>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<p>The alternate version uses <code>usleep(3)</code> with
<code>SLEEP</code> (defined in the Makefile, default <code>3000</code>)
microseconds to make it easier to see the maze being solved in real
time. You can redefine <code>SLEEP</code> at compile time to reconfigure
it in case it’s going too slow, too fast :-) or you’re doing some
strange experiment like making it 100000 (which is actually fun :-)
).</p>
<p>The alternate version uses <code>usleep(3)</code> with <code>SLEEP</code> (defined in the Makefile,
default <code>3000</code>) microseconds to make it easier to see the maze being solved in
real time. You can redefine <code>SLEEP</code> at compile time to reconfigure it in case
it’s going too slow, too fast :-) or you’re doing some strange experiment like
making it 100000 (which is actually fun :-) ).</p>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code>STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a
href="../../bugs.html#1995_cdua">1995 cdua bugs</a>.</p>
<p>For more detailed information see <a href="../../bugs.html#1995_cdua">1995 cdua bugs</a>.</p>
<h2 id="to-use">To use:</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">./cdua.alt</span></span></code></pre></div>
<h2 id="try">Try:</h2>
@@ -167,76 +163,54 @@ href="../../bugs.html#1995_cdua">1995 cdua bugs</a>.</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> SLEEP=65000 clobber alt</span>
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a><span class="ex">./cdua.alt</span> <span class="co"># press enter and watch it go much slower!</span></span></code></pre></div>
<p>Do you see anything strange in this version when <code>SLEEP</code>
is a high value like <code>65000</code>? What happens if you use
<code>100000</code>? Is this strange output still there? Why?</p>
<p>Do you see anything strange in this version when <code>SLEEP</code> is a high value like
<code>65000</code>? What happens if you use <code>100000</code>? Is this strange output still there?
Why?</p>
<h2 id="original-code">Original code:</h2>
<p>With modern systems this was hard to see it solve it in real time
because it goes so quickly which is why we recommend the alternate
version first: you can actually see it being solved in real time rather
than have it go by in a flash.</p>
<p>If you wish to use the original version, for instance if you wish to
see how fast your computer is :-) or use both to see the difference, you
can do so.</p>
<p>With modern systems this was hard to see it solve it in real time because it
goes so quickly which is why we recommend the alternate version first: you can
actually see it being solved in real time rather than have it go by in a flash.</p>
<p>If you wish to use the original version, for instance if you wish to see how
fast your computer is :-) or use both to see the difference, you can do so.</p>
<h3 id="original-build">Original build:</h3>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> all</span></code></pre></div>
<h3 id="original-use">Original use:</h3>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./cdua</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>This could be used as the basis of an a-maze-ing screen
exerciser.</p>
<p>This could be used as the basis of an a-maze-ing screen exerciser.</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>A program that generates a maze, and then solves it, all this being
seen by the user. Some highlights of obfuscation are: 3 step function in
one - <code>main()</code>, several recursive calls with conditional
actions, and just one (big and ugly) statement to solve the maze.</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>A program that generates a maze, and then solves it, all this being seen by the
user. Some highlights of obfuscation are: 3 step function in one - <code>main()</code>,
several recursive calls with conditional actions, and just one (big and ugly)
statement to solve the maze.</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-1995cdua"><a name="inventory"></a>Inventory for
1995/cdua</h1>
<h1 id="inventory-for-1995cdua"><a name="inventory"></a>Inventory for 1995/cdua</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/1995/cdua/cdua.c">cdua.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/cdua.alt.c">cdua.alt.c</a>
- alternative source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/cdua.orig.c">cdua.orig.c</a>
- original source</li>
<li><a href="1995_cdua.tar.bz2">1995_cdua.tar.bz2</a> - download entry
source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/cdua.c">cdua.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/cdua.alt.c">cdua.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/cdua.orig.c">cdua.orig.c</a> - original source</li>
<li><a href="1995_cdua.tar.bz2">1995_cdua.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/1995/cdua/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/.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/1995/cdua/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/.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/1995/cdua/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/cdua/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+21 -43
View File
@@ -130,8 +130,8 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Don_Dodson">Don Dodson</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of
America</em> (<em>United States</em>) <br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -154,66 +154,44 @@ giraffes.
<p>… which can be done like:</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>try<span class="op">.</span>sh</span></code></pre></div>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>Istha ogrampra akesta Englishwa extta aswa inputwa andwa anslatestra
itwa intowa Igpa Atinla.</p>
<p>Istha ogrampra akesta Englishwa extta aswa inputwa andwa
anslatestra itwa intowa Igpa Atinla.</p>
<p>The obfuscation is on several levels.</p>
<p>Most obviously, the shape of the program.</p>
<p>Underneath that, the variable names are in pig Latin, as are the
names of the standard C functions, such as <code>putchar()</code>. Even
main is written as <code>ainma</code>.</p>
names of the standard C functions, such as <code>putchar()</code>. Even main is
written as <code>ainma</code>.</p>
<p>The program construction is also very obfuscated, with all of the
code being inside the <code>()</code>’s of one of the 6
<code>orfa</code> loops.</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>
code being inside the <code>()</code>’s of one of the 6 <code>orfa</code> loops.</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-1995dodsond1"><a name="inventory"></a>Inventory
for 1995/dodsond1</h1>
<h1 id="inventory-for-1995dodsond1"><a name="inventory"></a>Inventory for 1995/dodsond1</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/1995/dodsond1/dodsond1.c">dodsond1.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/dodsond1.orig.c">dodsond1.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/try.sh">try.sh</a>
- how to run</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/try.this.txt">try.this.txt</a>
- sample input</li>
<li><a href="1995_dodsond1.tar.bz2">1995_dodsond1.tar.bz2</a> - download
entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/dodsond1.c">dodsond1.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/dodsond1.orig.c">dodsond1.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/try.sh">try.sh</a> - how to run</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/try.this.txt">try.this.txt</a> - sample input</li>
<li><a href="1995_dodsond1.tar.bz2">1995_dodsond1.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/1995/dodsond1/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/.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/1995/dodsond1/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/.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/1995/dodsond1/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond1/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+20 -39
View File
@@ -130,8 +130,8 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Don_Dodson">Don Dodson</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of
America</em> (<em>United States</em>) <br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -145,61 +145,42 @@ America</em> (<em>United States</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">./dodsond2</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>An amazing entry!</p>
<p>The official chef enjoyed solving the maze, which she did on the
first attempt.</p>
<p>The official chef enjoyed solving the maze, which she did on the first
attempt.</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<h3 id="interactive-3d-maze">Interactive 3D Maze</h3>
<p>Step into a randomly generated 3D maze and try to get out alive! Use
the vi movement keys (<code>hjkl</code>) to move on a level, and
<code>u</code> or <code>d</code> to move (u)p or (d)own from a position
with a <code>U</code> or <code>D</code> on the map. To simulate the
feeling of being in an unknown labyrinth, areas which you have not
visited cannot be seen.</p>
<p>Step into a randomly generated 3D maze and try to get out alive! Use the vi
movement keys (<code>hjkl</code>) to move on a level, and <code>u</code> or <code>d</code> to move (u)p or (d)own
from a position with a <code>U</code> or <code>D</code> on the map. To simulate the feeling of being
in an unknown labyrinth, areas which you have not visited cannot be seen.</p>
<p>Reach the north-west left corner of level 1 to exit.</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>
<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-1995dodsond2"><a name="inventory"></a>Inventory
for 1995/dodsond2</h1>
<h1 id="inventory-for-1995dodsond2"><a name="inventory"></a>Inventory for 1995/dodsond2</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/1995/dodsond2/dodsond2.c">dodsond2.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/dodsond2.orig.c">dodsond2.orig.c</a>
- original source</li>
<li><a href="1995_dodsond2.tar.bz2">1995_dodsond2.tar.bz2</a> - download
entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/dodsond2.c">dodsond2.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/dodsond2.orig.c">dodsond2.orig.c</a> - original source</li>
<li><a href="1995_dodsond2.tar.bz2">1995_dodsond2.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/1995/dodsond2/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/.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/1995/dodsond2/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/.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/1995/dodsond2/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/dodsond2/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+30 -59
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Sebastian_Deorowicz">Sebastian
Deorowicz</a><br> Location: <a href="../../location.html#PL">PL</a> -
<em>Republic of Poland</em> (<em>Poland</em>) <br><br></li>
<li>Name: <a href="../../authors.html#Sebastian_Deorowicz">Sebastian Deorowicz</a><br>
Location: <a href="../../location.html#PL">PL</a> - <em>Republic of Poland</em> (<em>Poland</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -149,26 +149,21 @@ Deorowicz</a><br> Location: <a href="../../location.html#PL">PL</a> -
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>When reading the source be careful to distinguish between variable
names and library functions.</p>
<p>If you still don’t know what it does, try <a
href="https://en.wikipedia.org/wiki/Soundex">https://en.wikipedia.org/wiki/Soundex</a>.</p>
<p>If you still don’t know what it does, try
<a href="https://en.wikipedia.org/wiki/Soundex">https://en.wikipedia.org/wiki/Soundex</a>.</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<h3 id="what-this-program-does">what this program does</h3>
<p>This program searches in the file words which have the same Soundex
code of the given word, and print out lines with those words.</p>
<p>This program searches in the file words which have the same Soundex code
of the given word, and print out lines with those words.</p>
<p>The Soundex code is used to find similar sounding words.</p>
<p>Soundex code begins with the first letter of the word followed by a
three-digit code. This is the algorithm:</p>
<ol start="0" type="1">
<li>Every letter in the word beyond the first letter is replaced by a
digit.</li>
<li>Replace all pairs of the same code by single code
(e.g. <code>R011235</code> -&gt; <code>R01235</code>).</li>
<li>Remove all zeroes (e.g. <code>R01235</code> -&gt;
<code>R1235</code>).</li>
<li>If length of code is &gt; 4, get only first 4 characters
(e.g. <code>R1235</code> -&gt; <code>R123</code>).</li>
<li>If length of code is &lt; 4, add zeros (e.g. <code>T12</code> -&gt;
<code>T120</code>).</li>
<li>Every letter in the word beyond the first letter is replaced by a digit.</li>
<li>Replace all pairs of the same code by single code (e.g. <code>R011235</code> -&gt; <code>R01235</code>).</li>
<li>Remove all zeroes (e.g. <code>R01235</code> -&gt; <code>R1235</code>).</li>
<li>If length of code is &gt; 4, get only first 4 characters (e.g. <code>R1235</code> -&gt; <code>R123</code>).</li>
<li>If length of code is &lt; 4, add zeros (e.g. <code>T12</code> -&gt; <code>T120</code>).</li>
</ol>
<p>These are the codes:</p>
<pre><code>0 = A, E, H, I, O, U, W, Y
@@ -178,63 +173,39 @@ digit.</li>
4 = L
5 = M, N
6 = R</code></pre>
<h3 id="information-about-an-info-file">information about an info
file:</h3>
<p>An info file should be a text file consisting of lines of text (max.
256 bytes in each line).</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>
<h3 id="information-about-an-info-file">information about an info file:</h3>
<p>An info file should be a text file consisting of lines of text (max. 256 bytes
in each line).</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-1995esde"><a name="inventory"></a>Inventory for
1995/esde</h1>
<h1 id="inventory-for-1995esde"><a name="inventory"></a>Inventory for 1995/esde</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/1995/esde/esde.c">esde.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/esde.orig.c">esde.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/esde.data2">esde.data2</a>
- example file argument</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/esde.data">esde.data</a>
- example file argument</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/try.sh">try.sh</a>
- how to run</li>
<li><a href="1995_esde.tar.bz2">1995_esde.tar.bz2</a> - download entry
source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/esde.c">esde.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/esde.orig.c">esde.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/esde.data2">esde.data2</a> - example file argument</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/esde.data">esde.data</a> - example file argument</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/try.sh">try.sh</a> - how to run</li>
<li><a href="1995_esde.tar.bz2">1995_esde.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/1995/esde/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/.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/1995/esde/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/.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/1995/esde/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/esde/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+35 -65
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Garry_Glendown">Garry
Glendown</a><br> Location: <a href="../../location.html#DE">DE</a> -
<em>Federal Republic of Germany</em> (<em>Germany</em>) <br><br></li>
<li>Name: <a href="../../authors.html#Garry_Glendown">Garry Glendown</a><br>
Location: <a href="../../location.html#DE">DE</a> - <em>Federal Republic of Germany</em> (<em>Germany</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -146,10 +146,10 @@ Glendown</a><br> Location: <a href="../../location.html#DE">DE</a> -
<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>
<h2 id="alternate-code">Alternate code:</h2>
<p>While it may not have been the intention of the author, the judges
noted that the C pre-processed version (with the <code>#include</code>s
left intact) looked very much like a rat “dropping core”. See <a
href="garry.alt.c">garry.alt.c</a> and judge for yourself!</p>
<p>While it may not have been the intention of the author, the
judges noted that the C pre-processed version (with the <code>#include</code>s
left intact) looked very much like a rat “dropping core”. See
<a href="garry.alt.c">garry.alt.c</a> and judge for yourself!</p>
<h3 id="alternate-build">Alternate build:</h3>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<h3 id="alternate-use">Alternate use:</h3>
@@ -160,88 +160,58 @@ href="garry.alt.c">garry.alt.c</a> and judge for yourself!</p>
<p>The author was kind enough to provide a less obfuscated version of
the source called <a href="garry.fmt.c">garry.fmt.c</a>.</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>This program is a file filter, designed to do environment-expansion
and incorporating the ability to create binary from escaped data in the
<p>This program is a file filter, designed to do environment-expansion and
incorporating the ability to create binary from escaped data in the
environment variables.</p>
<p>The calling syntax is pretty simple, just use it with
<code>stdio</code>-redirection or inside pipelines, e.g.:</p>
<p>The calling syntax is pretty simple, just use it with <code>stdio</code>-redirection
or inside pipelines, e.g.:</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./garry</span> <span class="op">&lt;</span>file_to_convert <span class="op">&gt;</span>converted_file</span></code></pre></div>
<p>or</p>
<div class="sourceCode" id="cb8"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cat</span> all_my_files/<span class="pp">*</span> <span class="kw">|</span> <span class="ex">./garry</span> <span class="kw">|</span> <span class="fu">lp</span></span></code></pre></div>
<p>The syntax of the conversion of the input file is as follows: To
include the value of an environment variable in the output file, place
the name of the variable between <code>$</code>-signs in the input,
e.g.:</p>
<p>The syntax of the conversion of the input file is as follows: To include the
value of an environment variable in the output file, place the name of the
variable between <code>$</code>-signs in the input, e.g.:</p>
<pre><code>My Home-Directory is: $HOME$
I&#39;m using the path: $PATH$</code></pre>
<p>Unknown Env-variables or malformed expressions are ignored and kept
intact.</p>
<p>Additionally, the filter replaces escaped octal values in the
environment variables by their binary representation, e.g.:</p>
<div class="sourceCode" id="cb10"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> TEST=<span class="st">&quot;\110\145\154\154\157&quot;</span></span>
<p>Unknown Env-variables or malformed expressions are ignored and kept intact.</p>
<p>Additionally, the filter replaces escaped octal values in the environment
variables by their binary representation, e.g.:</p>
<div class="sourceCode" id="cb10"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb10-1"><a href="#cb10-1" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> TEST=<span class="st">&quot;\110\145\154\154\157&quot;</span></span>
<span id="cb10-2"><a href="#cb10-2" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> export TEST</span>
<span id="cb10-3"><a href="#cb10-3" aria-hidden="true" tabindex="-1"></a><span class="ex">$</span> echo <span class="st">&#39;$TEST$&#39;</span> <span class="kw">|</span> <span class="ex">./garry</span></span>
<span id="cb10-4"><a href="#cb10-4" aria-hidden="true" tabindex="-1"></a><span class="ex">Hello</span></span></code></pre></div>
<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>
<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-1995garry"><a name="inventory"></a>Inventory for
1995/garry</h1>
<h1 id="inventory-for-1995garry"><a name="inventory"></a>Inventory for 1995/garry</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/1995/garry/garry.c">garry.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.alt.c">garry.alt.c</a>
- alternative source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.orig.c">garry.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.data">garry.data</a>
- example input</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/try.alt.sh">try.alt.sh</a>
- how to run alternative code</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/try.sh">try.sh</a>
- how to run</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.fmt.c">garry.fmt.c</a>
- defocused source code</li>
<li><a href="1995_garry.tar.bz2">1995_garry.tar.bz2</a> - download entry
source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.c">garry.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.alt.c">garry.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.orig.c">garry.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.data">garry.data</a> - example input</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/try.alt.sh">try.alt.sh</a> - how to run alternative code</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/try.sh">try.sh</a> - how to run</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/garry.fmt.c">garry.fmt.c</a> - defocused source code</li>
<li><a href="1995_garry.tar.bz2">1995_garry.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/1995/garry/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/.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/1995/garry/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/.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/1995/garry/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/garry/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+32 -51
View File
@@ -129,12 +129,12 @@
<h2 id="authors"><a name="author"></a>Authors:</h2>
<ul>
<li>Name: <a href="../../authors.html#Heather_Downs">Heather
Downs</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Selene_Makarios">Selene
Makarios</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Heather_Downs">Heather Downs</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
<li>Name: <a href="../../authors.html#Selene_Makarios">Selene Makarios</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -155,8 +155,8 @@ effect of the source was self documenting! :-)</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>Run this program with two non-negative integer arguments
(e.g. <code>./heathbar 1234 999</code>).</p>
<p>My goal was to create the fastest possible C program. To that end, I
made three critical observations:</p>
<p>My goal was to create the fastest possible C program. To that
end, I made three critical observations:</p>
<ol type="1">
<li>If there’s one thing computers are good at, it’s math.</li>
<li>Simple operations take less time than complicated ones.</li>
@@ -167,67 +167,48 @@ performed addition. From #2, I reasoned that it ought to directly
manipulate the bits, rather than wasting time dealing with bloated,
high-level, fuzzy-logic, artificial-intelligence, neural-net,
client-server, object-oriented abstractions like the C language “+”
operator. And it was obvious from #3 that the program should resemble,
as closely as possible, a long sequence of the familiar word
<code>main</code> repeated over and over, so the computer would be
comfortable running the program and wouldn’t get distracted dealing with
unfamiliar variable names.</p>
operator. And it was obvious from #3 that the program should
resemble, as closely as possible, a long sequence of the familiar
word <code>main</code> repeated over and over, so the computer would be
comfortable running the program and wouldn’t get distracted dealing
with unfamiliar variable names.</p>
<p>Also, I’ve looked at some past winning entries of your contest, and
if you don’t mind a little constructive criticism, some of them are
kind-of hard to figure out. I didn’t want my program to fall into the
same trap, so I went out of my way to write self-documenting code.
Anyone who so much as glances at my program will immediately see that it
adds two 16-bit unsigned integers by streaming their bits through a
simulated cascade of hardware adders. I hope my diligent effort to write
especially clear code gets me extra points!</p>
kind-of hard to figure out. I didn’t want my program to fall into
the same trap, so I went out of my way to write self-documenting
code. Anyone who so much as glances at my program will immediately
see that it adds two 16-bit unsigned integers by streaming their
bits through a simulated cascade of hardware adders. I hope my
diligent effort to write especially clear code gets me extra points!</p>
<p>P.S. What does “obfuscated” mean?</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>
<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-1995heathbar"><a name="inventory"></a>Inventory
for 1995/heathbar</h1>
<h1 id="inventory-for-1995heathbar"><a name="inventory"></a>Inventory for 1995/heathbar</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/1995/heathbar/heathbar.c">heathbar.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/heathbar.orig.c">heathbar.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/try.sh">try.sh</a>
- how to run</li>
<li><a href="1995_heathbar.tar.bz2">1995_heathbar.tar.bz2</a> - download
entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/heathbar.c">heathbar.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/heathbar.orig.c">heathbar.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/try.sh">try.sh</a> - how to run</li>
<li><a href="1995_heathbar.tar.bz2">1995_heathbar.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/1995/heathbar/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/.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/1995/heathbar/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/.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/1995/heathbar/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/heathbar/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+101 -113
View File
@@ -123,132 +123,125 @@
<!-- END: this line ends content from: inc/before-content.default.html -->
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h1 id="twelfth-international-obfuscated-c-code-contest">Twelfth
International Obfuscated C Code Contest</h1>
<p>View the <code>index.html</code> web page for the given winning entry
for information on how on how to compile and run the winning program.
Look at the winning source and try to figure how it does what it does!
You may then wish to look at the <code>Author's remarks</code> section
for even more details.</p>
<p>The IOCCC has an official home page, <a
href="https://www.ioccc.org">www.ioccc.org</a>, which contains previous
winning entries, information about the judges, announcements and much
<h1 id="twelfth-international-obfuscated-c-code-contest">Twelfth International Obfuscated C Code Contest</h1>
<p>View the <code>index.html</code> web page for the given winning entry for information on how
on how to compile and run the winning program. Look at the winning source and
try to figure how it does what it does! You may then wish to look at the
<code>Author's remarks</code> section for even more details.</p>
<p>The IOCCC has an official home page, <a href="https://www.ioccc.org">www.ioccc.org</a>, which contains
previous winning entries, information about the judges, announcements and much
more.</p>
<p>Use <code>make</code> to compile entries. It is possible that on BSD
or non-Unix systems the <code>Makefile</code> needs to be changed. See
the <code>Makefile</code> for details.</p>
<p>Read over the <code>Makefile</code> for compile/build issues. Your
system may require certain changes (add or remove a library, add or
remove a <code>#define</code> i.e. the <code>-D</code> flag).</p>
<p>This year <a href="http://www.malhar.net/sriram/">Sriram
Srinivasan</a> joined the judging.</p>
<p>The moderator of <a
href="https://groups.google.com/g/comp.unix.wizards">comp.unix.wizards</a>
did not feel that the IOCCC was “wizardly” enough to be posted to
comp.unix.wizards so we will no longer post the winning entries to this
newsgroup - we’ll let you the reader decide for yourself the wizardry of
these entries.</p>
<p>This year there were several people who won more than once and
several <a href="../authors.html">previous winning authors</a> as well.
The judging was done without knowledge of the names of the submitters -
multiple winning entries were a coincidence. Since we tend to discount
entries that are similar to previous entries, these people had to come
<p>Use <code>make</code> to compile entries. It is possible that on BSD or non-Unix
systems the <code>Makefile</code> needs to be changed. See the <code>Makefile</code> for details.</p>
<p>Read over the <code>Makefile</code> for compile/build issues. Your system may
require certain changes (add or remove a library, add or remove a
<code>#define</code> i.e. the <code>-D</code> flag).</p>
<p>This year <a href="http://www.malhar.net/sriram/">Sriram Srinivasan</a> joined the judging.</p>
<p>The moderator of
<a href="https://groups.google.com/g/comp.unix.wizards">comp.unix.wizards</a> did not feel
that the IOCCC was “wizardly” enough to be posted to comp.unix.wizards so we will
no longer post the winning entries to this newsgroup - we’ll let you the reader decide
for yourself the wizardry of these entries.</p>
<p>This year there were several people who won more than once and several <a href="../authors.html">previous
winning authors</a> as well. The judging was done without knowledge of the
names of the submitters - multiple winning entries were a coincidence. Since we tend to
discount entries that are similar to previous entries, these people had to come
with original ideas to stay in the winning entry circle.</p>
<p>We wish to thank <a
href="https://catalogs.rutgers.edu/generated/nb-grad_0305/pg20199.html">CAIP
at Rutgers University</a> for the use of their machines.</p>
<h2 id="a-few-notes-regarding-future-contests">A few notes regarding
future contests</h2>
<p>Due to changes in the <a
href="https://www.usenix.org/conferences/all">USENIX conference</a>
calendar, the <a href="../years.html#1996">1996 contest</a> will be
delayed. Because there will be no Summer 1996 USENIX conference, the
1996 IOCCC entries will be announced at the Jan 1997 USENIX
conference.</p>
<p>The 1996 contest will not open until sometime in October 1996, and
will close sometime around the end of December 1996. The <a
href="../1996/rules.txt">rules for the 1996 contest</a> have not been
formed at this time and are not expected to be ready for distribution
until late September 1996.</p>
<p>Be sure to wait until the <a href="../1996/rules.txt">1996 rules</a>
are posted before submitting entries. Rules differ from year to year,
sometimes in significant ways.</p>
<p>We wish to thank <a href="https://catalogs.rutgers.edu/generated/nb-grad_0305/pg20199.html">CAIP at Rutgers
University</a>
for the use of their machines.</p>
<h2 id="a-few-notes-regarding-future-contests">A few notes regarding future contests</h2>
<p>Due to changes in the <a href="https://www.usenix.org/conferences/all">USENIX
conference</a> calendar, the <a href="../years.html#1996">1996
contest</a> will be delayed. Because there will be no Summer
1996 USENIX conference, the 1996 IOCCC entries will be announced at the Jan 1997
USENIX conference.</p>
<p>The 1996 contest will not open until sometime in October 1996, and will close
sometime around the end of December 1996. The <a href="../1996/rules.txt">rules for the 1996
contest</a> have not been formed at this time and are not expected
to be ready for distribution until late September 1996.</p>
<p>Be sure to wait until the <a href="../1996/rules.txt">1996 rules</a> are posted before
submitting entries. Rules differ from year to year, sometimes in significant
ways.</p>
<p>Please send us comments and suggestions what we have expressed above.
Also include anything else that you would like to see in future
contests. Send such email to:</p>
Also include anything else that you would like to see in future contests.
Send such email to:</p>
<pre><code>...!{sun,pacbell,uunet,pyramid}!hoptoad!judges
judges@toad.com</code></pre>
<p>If you use, distribute or publish these entries in some way, please
drop us a line. We enjoy seeing who, where and how the contest is
used.</p>
<p>If you use, distribute or publish these entries in some way, please drop
us a line. We enjoy seeing who, where and how the contest is used.</p>
<h2 id="final-comments">Final Comments</h2>
<p><strong>IMPORTANT NOTE</strong>: The email addresses found above are
for historical purposes only, and should not be used today. See <a
href="../contact.html">contact.html</a> for up to date contact details
as well as details on how to provide fixes to any of the entries. See
also <a href="../faq.html">the IOCCC FAQ</a> for addition information on
the IOCCC.</p>
<p><strong>IMPORTANT NOTE</strong>: The email addresses found above are for historical
purposes only, and should not be used today. See
<a href="../contact.html">contact.html</a> for up to date contact details
as well as details on how to provide fixes to any of the entries.
See also <a href="../faq.html">the IOCCC FAQ</a> for addition information on the IOCCC.</p>
<h2 id="credits">Credits</h2>
<p>We would like to thank Barbara Frezza for her role as official chef
of the contest. Landon Noll, Larry Bassel and Sriram Srinivasan
<p>We would like to thank Barbara Frezza for her role as official chef of
the contest. Landon Noll, Larry Bassel and Sriram Srinivasan
appreciated the opportunity to serve as official taste testers. And as
usual, the food was excellent. The official menus of the 1995 Obfuscated
C Contest dinners were:</p>
usual, the food was excellent. The official menus of the 1995
Obfuscated C Contest dinners were:</p>
<h3 id="session-one">Session One:</h3>
<p>Antipasti: Crudites, olive selection, pickles, cheese selection Soup:
Homemade mushroom and green onion soup Salad: artichoke, red bell
peppers, Italian onions, cucumbers and Greek olives with mustard
vinaigrette Main Course: Pizzas, with a variety of toppings Dessert:
Chocolate torte</p>
<p>Antipasti: Crudites, olive selection, pickles, cheese selection
Soup: Homemade mushroom and green onion soup
Salad: artichoke, red bell peppers, Italian onions, cucumbers
and Greek olives with mustard vinaigrette
Main Course: Pizzas, with a variety of toppings
Dessert: Chocolate torte</p>
<h3 id="session-two">Session Two:</h3>
<p>Antipasti: crudites, olives, roasted red peppers, cheese selection
Salad: Mixed greens with vinaigrette Main Course: Spaghetti with tomato
sauce containing mushrooms and black olives selection of hot and mild
Italian sausages Bread: Fresh French bread Dessert: Cookie selection,
featuring chocolate chocolate chip cookies and chocolate butter
cookies</p>
Salad: Mixed greens with vinaigrette
Main Course: Spaghetti with tomato sauce containing mushrooms and black olives
selection of hot and mild Italian sausages
Bread: Fresh French bread
Dessert: Cookie selection, featuring chocolate chocolate chip cookies and
chocolate butter cookies</p>
<h3 id="session-three">Session Three</h3>
<p>Antipasti: Crudites, olive selection Salad: Mixed greens with mustard
vinaigrette Main Course: Broiled salmon with lemon pepper mayonnaise,
chard, mixture of white and wild rices Bread: Cheese bread with herbs
<p>Antipasti: Crudites, olive selection
Salad: Mixed greens with mustard vinaigrette
Main Course: Broiled salmon with lemon pepper mayonnaise, chard, mixture
of white and wild rices
Bread: Cheese bread with herbs
Dessert: Chocolate cheesecake (Courtesy of Elizabeth Watson)</p>
<h3 id="session-four">Session Four:</h3>
<p>Antipasti: Crudites, olive selection, roasted red peppers, cheese
selection Bread: Sourdough Salad: Mixed spring greens with flowers, and
mustard vinaigrette Main Course: Surf and Turf–Grilled steaks of salmon
and New York steak grilled vegetables–onions, peppers, portobello
mushrooms wild rice Dessert: Chocolate mousse</p>
<p>Antipasti: Crudites, olive selection, roasted red peppers, cheese selection
Bread: Sourdough
Salad: Mixed spring greens with flowers, and mustard vinaigrette
Main Course: Surf and Turf–Grilled steaks of salmon and New York steak
grilled vegetables–onions, peppers, portobello mushrooms
wild rice
Dessert: Chocolate mousse</p>
<h3 id="session-five">Session Five:</h3>
<p>Antipasti: Crudites, olive selection, pickles Salad: Mixed spring
greens with mustard vinaigrette Main Course: Linguini with a cream sauce
of shiitake mushrooms and smoked salmon Bread: Garlic bread Dessert:
Flour-less chocolate torte</p>
<p>Antipasti: Crudites, olive selection, pickles
Salad: Mixed spring greens with mustard vinaigrette
Main Course: Linguini with a cream sauce of shiitake mushrooms and smoked
salmon
Bread: Garlic bread
Dessert: Flour-less chocolate torte</p>
<h3 id="session-six">Session Six:</h3>
<p>Antipasti: Carrot and celery sticks with cheese spread, olive
selection, pickles Bread: Focaccia with black olives and mozzarella
cheeses Salad: Mixed spring greens with flowers and mustard vinaigrette
Soup: Homemade butternut squash soup with mushrooms Main Course: Cracked
Dungeness crab with lemon mayonnaise, broccoli, mixture of white and
brown rice Dessert: Key lime pie</p>
<p>Antipasti: Carrot and celery sticks with cheese spread, olive selection,
pickles
Bread: Focaccia with black olives and mozzarella cheeses
Salad: Mixed spring greens with flowers and mustard vinaigrette
Soup: Homemade butternut squash soup with mushrooms
Main Course: Cracked Dungeness crab with lemon mayonnaise, broccoli,
mixture of white and brown rice
Dessert: Key lime pie</p>
<h1 id="copyright-and-license">Copyright and License</h1>
<p>Copyright (c) 1995,2023, Landon Curt Noll, Larry Bassel, Sriram
Srinivasan. All Rights Reserved. This work is licensed under a <a
href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons
CC BY-SA 4.0 DEED Attribution-ShareAlike 4.0 International</a> license.
If you do use this work in some form, the <a href="../judges.html">IOCCC
judges</a> would appreciate (but does not require) if you were to <a
href="../contact.html">send us a note about your use</a>.</p>
<p>Copyright (c) 1995,2023, Landon Curt Noll, Larry Bassel, Sriram Srinivasan. All Rights Reserved.
This work is licensed under a <a href="https://creativecommons.org/licenses/by-sa/4.0/">Creative Commons CC BY-SA 4.0 DEED Attribution-ShareAlike
4.0 International</a> license.
If you do use this work in some form, the <a href="../judges.html">IOCCC judges</a> would appreciate
(but does not require) if you were to <a href="../contact.html">send us a note about your use</a>.</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-year-index.sh via bin/md2html.sh -->
<!-- START: this line starts content generated by: bin/output-year-index.sh -->
<h1
id="winning-entries-of-1995---the-12th-ioccc"><a name=inventory></a><a name=1995></a>Winning
Entries of 1995 - The 12th IOCCC</h1>
<p><strong>Download IOCCC</strong> <a
href="1995/ioccc.1995.tar.bz2">1995 entry source</a></p>
<h1 id="winning-entries-of-1995---the-12th-ioccc"><a name=inventory></a><a name=1995></a>Winning Entries of 1995 - The 12th IOCCC</h1>
<p><strong>Download IOCCC</strong> <a href="1995/ioccc.1995.tar.bz2">1995 entry source</a></p>
<ul>
<li><a href="cdua/index.html">1995/cdua</a> - Best Output</li>
<li><a href="dodsond1/index.html">1995/dodsond1</a> - Most Humorous</li>
@@ -257,16 +250,11 @@ href="1995/ioccc.1995.tar.bz2">1995 entry source</a></p>
<li><a href="garry/index.html">1995/garry</a> - Best Utility</li>
<li><a href="heathbar/index.html">1995/heathbar</a> - Best Layout</li>
<li><a href="leo/index.html">1995/leo</a> - Best Use of Obfuscation</li>
<li><a href="makarios/index.html">1995/makarios</a> - Best Short
Program</li>
<li><a href="savastio/index.html">1995/savastio</a> - Most Obfuscated
Syntax</li>
<li><a href="schnitzi/index.html">1995/schnitzi</a> - Best One
Liner</li>
<li><a href="spinellis/index.html">1995/spinellis</a> - Abusing The
Rules</li>
<li><a href="vanschnitz/index.html">1995/vanschnitz</a> - Worst Abuse of
the C Preprocessor and Most Likely to Amaze</li>
<li><a href="makarios/index.html">1995/makarios</a> - Best Short Program</li>
<li><a href="savastio/index.html">1995/savastio</a> - Most Obfuscated Syntax</li>
<li><a href="schnitzi/index.html">1995/schnitzi</a> - Best One Liner</li>
<li><a href="spinellis/index.html">1995/spinellis</a> - Abusing The Rules</li>
<li><a href="vanschnitz/index.html">1995/vanschnitz</a> - Worst Abuse of the C Preprocessor and Most Likely to Amaze</li>
</ul>
<p> <strong>Jump to:</strong> <a href="#">top</a></p>
+76 -115
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Leonid_A_Broukhis">Leonid A.
Broukhis</a><br> Location: <a href="../../location.html#US">US</a> -
<em>United States of America</em> (<em>United States</em>) <br><br></li>
<li>Name: <a href="../../authors.html#Leonid_A_Broukhis">Leonid A. Broukhis</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -144,8 +144,7 @@ Broukhis</a><br> Location: <a href="../../location.html#US">US</a> -
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code>STATUS: known bug - please help us fix</code></pre>
<p>For more detailed information see <a
href="../../bugs.html#1995_leo">1995 leo bugs</a>.</p>
<p>For more detailed information see <a href="../../bugs.html#1995_leo">1995 leo bugs</a>.</p>
<h2 id="to-use">To use:</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">./leo</span> [ deep ] [ right ] [ Variable ] [ cycle [ freq ] ]</span></code></pre></div>
<p>See the author’s information below on these details.</p>
@@ -158,36 +157,31 @@ remember that it is nu-clear. :-)</p>
<p>Some Ghostscripts/Postscript programs cleared the screen right after
the image is drawn, so we added element 106 which acts as an input
buffer.</p>
<p>To qualify for a category specially for yourself in the Geek code,
find out all the secret switches that the author doesn’t divulge ! (All
switches are single characters on the command line - anything that’s not
a number is a candidate.)</p>
<p>To qualify for a category specially for yourself in the Geek code, find out all
the secret switches that the author doesn’t divulge ! (All switches are single
characters on the command line - anything that’s not a number is a candidate.)</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>The usage is:</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> [ deep ] [ right ] [ Variable ] [ cycle [ freq ] ]</span></code></pre></div>
<p>where the first three are literal words, <code>cycle</code> is a
positive integer (0 is ignored), and <code>freq</code> is an integer
(default = 0) that’s supposed to be in the range <code>0..100</code>
(bigger values are allowed, however). Invalid parameters and options
usually stop the command line parsing (not always but why?). The actual
position of the word options does not matter, so
<code>./leo right Variable 1 70</code> is equivalent to
<code>./leo 0 0 0 1 Variable 70 right</code>, etc.</p>
<p>If <code>Variable</code> is used, <code>cycle</code> is almost
ignored (see below) but has to be present if you want to enter
<code>freq</code> (and you usually do).</p>
<p>where the first three are literal words, <code>cycle</code> is a positive integer (0 is
ignored), and <code>freq</code> is an integer (default = 0) that’s supposed to be in the
range <code>0..100</code> (bigger values are allowed, however). Invalid parameters and
options usually stop the command line parsing (not always but why?). The actual
position of the word options does not matter, so <code>./leo right Variable 1 70</code> is
equivalent to <code>./leo 0 0 0 1 Variable 70 right</code>, etc.</p>
<p>If <code>Variable</code> is used, <code>cycle</code> is almost ignored (see below) but has
to be present if you want to enter <code>freq</code> (and you usually do).</p>
<p>Some options to try (besides the obvious):</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> 1 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<p>This draws the basic pattern I invented in high school:</p>
<p>You take a big sheet of “arithmetic” paper and draw a line of length
1 (between 2 crossings) at the center of the sheet:</p>
<p>You take a big sheet of “arithmetic” paper and draw a line
of length 1 (between 2 crossings) at the center of the sheet:</p>
<pre><code> |</code></pre>
<p>This makes 2 open ends (I think the notion of an “open end” doesn’t
require explanations) in step 1. Now, until there are open ends in step
N, repeat: for each open end pretend it points north and draw 2 lines
going northwest and northeast from it to the nearest crossings. This
needs to be done “simultaneously” for all ends that are open at that
moment.</p>
require explanations) in step 1. Now, until there are open ends in step N,
repeat: for each open end pretend it points north and draw 2 lines going
northwest and northeast from it to the nearest crossings. This needs to be
done “simultaneously” for all ends that are open at that moment.</p>
<p>Step 2:</p>
<pre><code> \./
|
@@ -219,13 +213,13 @@ moment.</p>
|_./ \./ \._|
| |
</code></pre>
<p>The lines marked by <code>I</code> show the places where
“simultaneity” is significant.</p>
<p>Note that so far all the drawings represent valid structural formulas
of some organic substances.</p>
<p>step 1: ethane step 2: 2,3-dimethylbutane step 3:
(2,5-dimethyl;3,4-isopropyl)-hexane step 4 and 5: I don’t know. Do
you?</p>
<p>The lines marked by <code>I</code> show the places where “simultaneity” is significant.</p>
<p>Note that so far all the drawings represent valid structural formulas of some
organic substances.</p>
<p>step 1: ethane
step 2: 2,3-dimethylbutane
step 3: (2,5-dimethyl;3,4-isopropyl)-hexane
step 4 and 5: I don’t know. Do you?</p>
<p>Step 6:</p>
<pre><code> \./ \./ \./ \./
._| . |_. ._| . |_.
@@ -241,8 +235,8 @@ you?</p>
</code></pre>
<p>depending on the desired “hairiness”. The original (paper-based)
algorithm was “hairy”, but it didn’t look as good on the screen.</p>
<p>The program cannot handle non-hairy mode 100% correctly - step 6
happens to be</p>
<p>The program cannot handle non-hairy mode 100% correctly - step 6 happens
to be</p>
<pre><code> |__
...__/ ...__/
... \ ... \.
@@ -253,116 +247,83 @@ happens to be</p>
\ \.__
|
</code></pre>
<p>and so on: the horizontal symmetry has been lost. That’s why the
opening for step 1 is not a single line but a cross:</p>
<p>and so on: the horizontal symmetry has been lost. That’s why
the opening for step 1 is not a single line but a cross:</p>
<pre><code> \./
/ \</code></pre>
<p>To watch it repeatedly (as a screen saver), use:</p>
<div class="sourceCode" id="cb15"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb15-1"><a href="#cb15-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> 2 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<div class="sourceCode" id="cb15"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb15-1"><a href="#cb15-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> 2 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<p>The command line:</p>
<div class="sourceCode" id="cb16"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb16-1"><a href="#cb16-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> Variable 1 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<div class="sourceCode" id="cb16"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb16-1"><a href="#cb16-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> Variable 1 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<p>draws the same as above. Try:</p>
<div class="sourceCode" id="cb17"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb17-1"><a href="#cb17-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> Variable 1 1 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<p>What happened to the picture? Increase <code>freq</code> and watch
the changes.</p>
<p>If <code>cycle</code> is more than 1, the program loops, allowing the
user to enjoy randomly changing patterns (the delay is 3 seconds), but
there is a secret switch to suppress looping: useful if you want to pipe
the output to a printer.</p>
<p><code>uudecode</code> the spoiler below if you really want to
know.</p>
<div class="sourceCode" id="cb17"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb17-1"><a href="#cb17-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> Variable 1 1 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<p>What happened to the picture? Increase <code>freq</code> and watch the changes.</p>
<p>If <code>cycle</code> is more than 1, the program loops, allowing the user to
enjoy randomly changing patterns (the delay is 3 seconds),
but there is a secret switch to suppress looping: useful
if you want to pipe the output to a printer.</p>
<p><code>uudecode</code> the spoiler below if you really want to know.</p>
<pre><code>begin 664 spoiler1
M*%1H92!C;VQO;B J:7,J(&#39;1H92!S96-R970@&lt;W=I=&amp;-H(&quot;T@=&amp;AE(&#39;-P86-E
=(&amp;)E9F]R92!I=&quot;!I&lt;R!N;W0@82!M:7-T86ME*0II
end</code></pre>
<p>If <code>Variable</code> is used, the actual value of
<code>cycle</code> doesn’t matter, as far as it is &gt; 1. To figure out
what difference <code>cycle</code> makes when <code>Variable</code> is
not used, try</p>
<div class="sourceCode" id="cb19"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb19-1"><a href="#cb19-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> Variable 37 80 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<p>and other values of <code>cycle</code>; smaller values usually
require smaller values of <code>freq</code> for the patterns to be
non-trivial.</p>
<p>The options <code>deep</code> and <code>right</code> make the
patterns to be drawn in different manners. Try all the examples above
with <code>deep</code> and with <code>right</code>. What is the
difference between them?</p>
<p>…There is a little flaw in the implementation of the algorithm, and
sometimes the patterns are not symmetrical when they ought to be (the
program needs to be slightly changed to expose the flaw, otherwise it is
hardly noticeable, if ever).</p>
<p>A quick and dirty fix (turned on by another secret switch) makes the
patterns symmetrical, but a little too HAIRY.</p>
<p>There is one more secret switch (it shall also remain nameless), and
I don’t even want to explain what it does. You’ve been warned!</p>
<p>If <code>Variable</code> is used, the actual value of <code>cycle</code> doesn’t matter,
as far as it is &gt; 1. To figure out what difference
<code>cycle</code> makes when <code>Variable</code> is not used, try</p>
<div class="sourceCode" id="cb19"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb19-1"><a href="#cb19-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./leo</span> Variable 37 80 <span class="kw">|</span> <span class="fu">cat</span> <span class="at">-</span> /dev/tty <span class="kw">|</span> <span class="fu">gs</span> <span class="at">-</span></span></code></pre></div>
<p>and other values of <code>cycle</code>; smaller values usually require
smaller values of <code>freq</code> for the patterns to be non-trivial.</p>
<p>The options <code>deep</code> and <code>right</code> make the patterns to be drawn in different
manners. Try all the examples above with <code>deep</code> and with <code>right</code>.
What is the difference between them?</p>
<p>…There is a little flaw in the implementation of the algorithm,
and sometimes the patterns are not symmetrical when they ought to be
(the program needs to be slightly changed to expose the flaw,
otherwise it is hardly noticeable, if ever).</p>
<p>A quick and dirty fix (turned on by another secret switch)
makes the patterns symmetrical, but a little too HAIRY.</p>
<p>There is one more secret switch (it shall also remain nameless), and I don’t
even want to explain what it does. You’ve been warned!</p>
<pre><code> * * *</code></pre>
<p>Special thanks:</p>
<ul>
<li>to PostScript syntax designers for the curly braces;</li>
<li>to <a href="https://en.wikipedia.org/wiki/Dmitri_Mendeleev">Dmitry
Mendeleyev</a> for his <a
href="https://en.wikipedia.org/wiki/Periodic_table">periodic table of
elements</a>;</li>
<li>to <a href="https://en.wikipedia.org/wiki/Hydrogen">Hydrogen</a> for
having 2 more <a
href="https://en.wikipedia.org/wiki/Isotope">isotopes</a>.</li>
<li>to <a href="https://en.wikipedia.org/wiki/Dmitri_Mendeleev">Dmitry Mendeleyev</a> for his
<a href="https://en.wikipedia.org/wiki/Periodic_table">periodic table of elements</a>;</li>
<li>to <a href="https://en.wikipedia.org/wiki/Hydrogen">Hydrogen</a> for having 2 more
<a href="https://en.wikipedia.org/wiki/Isotope">isotopes</a>.</li>
</ul>
<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>
<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-1995leo"><a name="inventory"></a>Inventory for
1995/leo</h1>
<h1 id="inventory-for-1995leo"><a name="inventory"></a>Inventory for 1995/leo</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/1995/leo/leo.c">leo.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/leo.orig.c">leo.orig.c</a>
- original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/leo.c">leo.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/leo.orig.c">leo.orig.c</a> - original source</li>
<li><a href="spoiler1.html">spoiler1.html</a> - spoiler document</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/try.sh">try.sh</a>
- how to run</li>
<li><a href="1995_leo.tar.bz2">1995_leo.tar.bz2</a> - download entry
source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/try.sh">try.sh</a> - how to run</li>
<li><a href="1995_leo.tar.bz2">1995_leo.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/1995/leo/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/.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/1995/leo/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/.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/1995/leo/README.md">README.md</a>
- markdown source for index.html</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/spoiler1.md">spoiler1.md</a>
- markdown source for spoiler1.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/README.md">README.md</a> - markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/spoiler1.md">spoiler1.md</a> - markdown source for spoiler1.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+1 -2
View File
@@ -120,8 +120,7 @@
<!-- END: this line ends content from: inc/before-content.default.html -->
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<p>(The colon <em>is</em> the secret switch - the space before it is not
a mistake)</p>
<p>(The colon <em>is</em> the secret switch - the space before it is not a mistake)</p>
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- START: this line starts content from: inc/after-content.default.html -->
+18 -35
View File
@@ -129,12 +129,12 @@
<h2 id="authors"><a name="author"></a>Authors:</h2>
<ul>
<li>Name: <a href="../../authors.html#Heather_Downs">Heather
Downs</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Selene_Makarios">Selene
Makarios</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Heather_Downs">Heather Downs</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
<li>Name: <a href="../../authors.html#Selene_Makarios">Selene Makarios</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -153,50 +153,33 @@ Can you figure out how it does it?</p>
<p>This program takes no arguments. It emits the base 8 representation
of prime palindromes (palindromic in base 8, of course).</p>
<pre><code>^_^</code></pre>
<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>
<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-1995makarios"><a name="inventory"></a>Inventory
for 1995/makarios</h1>
<h1 id="inventory-for-1995makarios"><a name="inventory"></a>Inventory for 1995/makarios</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/1995/makarios/makarios.c">makarios.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/makarios.orig.c">makarios.orig.c</a>
- original source</li>
<li><a href="1995_makarios.tar.bz2">1995_makarios.tar.bz2</a> - download
entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/makarios.c">makarios.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/makarios.orig.c">makarios.orig.c</a> - original source</li>
<li><a href="1995_makarios.tar.bz2">1995_makarios.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/1995/makarios/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/.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/1995/makarios/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/.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/1995/makarios/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/makarios/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+31 -51
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Michael_Savastio">Michael
Savastio</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Michael_Savastio">Michael Savastio</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -144,13 +144,12 @@ Savastio</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code>STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a
href="../../bugs.html#1995_savastio">1995 savastio bugs</a>.</p>
<p>For more detailed information see <a href="../../bugs.html#1995_savastio">1995 savastio bugs</a>.</p>
<h2 id="to-use">To use:</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">./savastio</span></span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a><span class="co"># enter a POSITIVE number such as 100</span></span></code></pre></div>
<p>NOTE: if you specify a negative number it will get stuck, showing no
output. But what happens if you give a non-number?</p>
<p>NOTE: if you specify a negative number it will get stuck, showing no output. But
what happens if you give a non-number?</p>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -159,72 +158,53 @@ output. But what happens if you give a non-number?</p>
<p>This program is an infinite-precision factorial calculator. It will
compute the factorial of any number entered to an infinite degree of
precision (or the limits of your machine’s memory, whichever comes
first). I’d suggest you start with small numbers the first few times you
run it and gradually work your way up in order to get a feel for the
computation time your machine will require.</p>
<p>Aside from having an artistic code layout and confusing variable
names, the algorithm itself takes advantage of some cute C-isms. Try to
first). I’d suggest you start with small numbers the first few times
you run it and gradually work your way up in order to get a feel for
the computation time your machine will require.</p>
<p>Aside from having an artistic code layout and confusing variable names,
the algorithm itself takes advantage of some cute C-isms. Try to
figure out how it prints the prompt “Enter number:”.</p>
<p>Numbers are represented internally by a <a
href="https://en.wikipedia.org/wiki/Linked_list">linked list</a> of
blocks each containing 1000 buckets of 4-digit integers. To further
confuse matters, the buckets are arranged backwards in the block. For
example, the number 8347108947139478934713847134 is represented as:</p>
<p>Numbers are represented internally by a <a href="https://en.wikipedia.org/wiki/Linked_list">linked
list</a> of blocks each
containing 1000 buckets of 4-digit integers. To further confuse
matters, the buckets are arranged backwards in the block. For example,
the number 8347108947139478934713847134 is represented as:</p>
<pre><code>7134 1384 9347 3947 9471 7108 834</code></pre>
<h3 id="platform-limitations">Platform limitations</h3>
<p>Long integers must be at least 4 bytes.</p>
<h3 id="features">Features</h3>
<p>In order to prevent the user from wasting too much time computing
useless factorials, the maximum factorial that can be computed is
429539! This limit was selected through extensive research in time
management studies and the factorial arts.</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>
429539! This limit was selected through extensive research in
time management studies and the factorial arts.</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-1995savastio"><a name="inventory"></a>Inventory
for 1995/savastio</h1>
<h1 id="inventory-for-1995savastio"><a name="inventory"></a>Inventory for 1995/savastio</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/1995/savastio/savastio.c">savastio.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/savastio.orig.c">savastio.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/try.sh">try.sh</a>
- how to run</li>
<li><a href="1995_savastio.tar.bz2">1995_savastio.tar.bz2</a> - download
entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/savastio.c">savastio.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/savastio.orig.c">savastio.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/try.sh">try.sh</a> - how to run</li>
<li><a href="1995_savastio.tar.bz2">1995_savastio.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/1995/savastio/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/.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/1995/savastio/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/.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/1995/savastio/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/savastio/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+22 -42
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Mark_Schnitzius">Mark
Schnitzius</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Mark_Schnitzius">Mark Schnitzius</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -145,63 +145,43 @@ Schnitzius</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<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">./schnitzi</span> num</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>WARNING: the author warns to not use too high a number! If you wish
to ignore the warning it is an exercise to determine how high is too
high. :-)</p>
<p>WARNING: the author warns to not use too high a number! If you wish to ignore
the warning it is an exercise to determine how high is too high. :-)</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>Sometimes a core dump is a feature, not a bug!</p>
<p>This is one of the better one-liners we have seen in a while. Take
some time to figure out what it does before you run it!</p>
<p>This is one of the better one-liners we have seen in a while.
Take some time to figure out what it does before you run it!</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>Beware, running this program with too high of a number amounts to
doing a fork bomb on your machine!</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>Beware, running this program with too high of a number
amounts to doing a fork bomb on your machine!</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-1995schnitzi"><a name="inventory"></a>Inventory
for 1995/schnitzi</h1>
<h1 id="inventory-for-1995schnitzi"><a name="inventory"></a>Inventory for 1995/schnitzi</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/1995/schnitzi/schnitzi.c">schnitzi.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/schnitzi.orig.c">schnitzi.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/try.sh">try.sh</a>
- how to run</li>
<li><a href="1995_schnitzi.tar.bz2">1995_schnitzi.tar.bz2</a> - download
entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/schnitzi.c">schnitzi.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/schnitzi.orig.c">schnitzi.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/try.sh">try.sh</a> - how to run</li>
<li><a href="1995_schnitzi.tar.bz2">1995_schnitzi.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/1995/schnitzi/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/.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/1995/schnitzi/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/.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/1995/schnitzi/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/schnitzi/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+23 -40
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Diomidis_Spinellis">Diomidis
Spinellis</a><br> Location: <a href="../../location.html#GR">GR</a> -
<em>Hellenic Republic</em> (<em>Greece</em>) <br><br></li>
<li>Name: <a href="../../authors.html#Diomidis_Spinellis">Diomidis Spinellis</a><br>
Location: <a href="../../location.html#GR">GR</a> - <em>Hellenic Republic</em> (<em>Greece</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -147,58 +147,41 @@ Spinellis</a><br> Location: <a href="../../location.html#GR">GR</a> -
<p>While the code does not abuse the rules, its output surely does!</p>
<p>P.S. Does the source have any spelling errors?</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>96% of the program lines (631 out of the 658) are comment text
rendering the program readable and understandable. With the exception of
the two include file names (needed for a warning-free compile) the
program passes the standard Unix spell checker without any errors.
Checking for spelling errors is considered very important for programs
that are so heavily commented. This program is exactly 3217 characters
long through judicious use of white space. Rule abuse? Would I
<em>ever</em> abuse the rules?</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>96% of the program lines (631 out of the 658) are comment text rendering
the program readable and understandable. With the exception of the
two include file names (needed for a warning-free compile) the program
passes the standard Unix spell checker without any errors. Checking
for spelling errors is considered very important for programs that are
so heavily commented. This program is exactly 3217 characters long
through judicious use of white space. Rule abuse? Would I <em>ever</em> abuse
the rules?</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-1995spinellis"><a name="inventory"></a>Inventory
for 1995/spinellis</h1>
<h1 id="inventory-for-1995spinellis"><a name="inventory"></a>Inventory for 1995/spinellis</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/1995/spinellis/spinellis.c">spinellis.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/spinellis.orig.c">spinellis.orig.c</a>
- original source</li>
<li><a href="1995_spinellis.tar.bz2">1995_spinellis.tar.bz2</a> -
download entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/spinellis.c">spinellis.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/spinellis.orig.c">spinellis.orig.c</a> - original source</li>
<li><a href="1995_spinellis.tar.bz2">1995_spinellis.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/1995/spinellis/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/.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/1995/spinellis/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/.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/1995/spinellis/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/spinellis/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
+75 -99
View File
@@ -129,12 +129,12 @@
<h2 id="authors"><a name="author"></a>Authors:</h2>
<ul>
<li>Name: <a href="../../authors.html#David_Van_Brackle">David Van
Brackle</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#Mark_Schnitzius">Mark
Schnitzius</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<em>Unknown location</em> <br><br></li>
<li>Name: <a href="../../authors.html#David_Van_Brackle">David Van Brackle</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
<li>Name: <a href="../../authors.html#Mark_Schnitzius">Mark Schnitzius</a><br>
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -144,79 +144,76 @@ Schnitzius</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
<h2 id="to-build">To build:</h2>
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> all</span></code></pre></div>
<p>The authors provided a spoiler version, originally uuencoded but
uudecoded by us in 2023. See <a href="#alternate-code">Alternate
code</a> below.</p>
<p>The authors provided a spoiler version, originally uuencoded but uudecoded by us
in 2023. See <a href="#alternate-code">Alternate code</a> below.</p>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code>STATUS: missing file - please provide it</code></pre>
<p>For more detailed information see <a
href="../../bugs.html#1995_vanschnitz">1995 vanschnitz bugs</a>.</p>
<p>For more detailed information see <a href="../../bugs.html#1995_vanschnitz">1995 vanschnitz bugs</a>.</p>
<h2 id="to-use">To use:</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">./vanschnitz</span></span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<h2 id="alternate-code">Alternate code:</h2>
<p>The authors provided a spoiler version of the program. Originally
uuencoded we have decoded it for the wider audience in <a
href="vanschnitz.alt.c">vanschnitz.alt.c</a>. The <code>uuencode</code>d
blob is still available in their remarks below. They encourage you to
first try and figure out the program without the spoiler.</p>
<p>The authors provided a spoiler version of the program. Originally uuencoded we
have decoded it for the wider audience in <a href="vanschnitz.alt.c">vanschnitz.alt.c</a>. The
<code>uuencode</code>d blob is still available in their remarks below. They encourage you
to first try and figure out the program without the spoiler.</p>
<h3 id="alternate-build">Alternate build:</h3>
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>vanschnitz.alt</code> as you would <code>vanschnitz</code>
above.</p>
<p>Use <code>vanschnitz.alt</code> as you would <code>vanschnitz</code> above.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>Back in 1995, values of <code>LEVEL&gt;8</code> caused some compilers
(and in one case a system) to crash during compilation. In 2023 with
modern systems this is not really a problem.</p>
<p>Back in 1995 we also suggested that for a bad/slow time to try
<code>LEVEL=15</code> but this is not a big deal in 2023 either.</p>
<p>Back in 1995, values of <code>LEVEL&gt;8</code> caused some compilers (and in one case a
system) to crash during compilation. In 2023 with modern systems this is not
really a problem.</p>
<p>Back in 1995 we also suggested that for a bad/slow time to try <code>LEVEL=15</code> but
this is not a big deal in 2023 either.</p>
<h2 id="authors-remarks">Authors’ remarks:</h2>
<p>A classic problem in computer science is known as the Towers of
Hanoi. It involves a set of different-sized disks mounted on one of
three pegs. The object is to move the pile of disks to one of the other
pegs. You may only move one disk at a time, and there is an additional
constraint that a disk may never be placed on top of a smaller disk.</p>
<p>Our program solves the Towers of Hanoi problem. Well, that’s not
exactly true; actually, it’s the compiler that solves the problem. The
resulting program just prints out the correct solution.</p>
<p>How do you trick a compiler into actually solving the problem? First,
you must tell it how many disks you wish to solve it for. This is done
by defining the symbol <code>n</code> on the compile line. For instance,
to cause the compiler to solve the Towers of Hanoi problem with four
disks, you would compile the program like this:</p>
<p>A classic problem in computer science is known as the Towers
of Hanoi. It involves a set of different-sized disks mounted
on one of three pegs. The object is to move the pile of disks
to one of the other pegs. You may only move one disk at a
time, and there is an additional constraint that a disk may
never be placed on top of a smaller disk.</p>
<p>Our program solves the Towers of Hanoi problem. Well, that’s
not exactly true; actually, it’s the compiler that solves the
problem. The resulting program just prints out the correct
solution.</p>
<p>How do you trick a compiler into actually solving the problem?
First, you must tell it how many disks you wish to solve it
for. This is done by defining the symbol <code>n</code> on the compile
line. For instance, to cause the compiler to solve the Towers
of Hanoi problem with four disks, you would compile the program
like this:</p>
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="fu">gcc</span> hanoi.c <span class="at">-o</span> hanoi <span class="at">-Dn</span><span class="op">=</span>4</span></code></pre></div>
<p>A default value of <code>5</code> will be used for <code>n</code> if
you do not define it on the command line. The value of <code>n</code>
cannot be greater than fifteen (the compiler we used to test has a limit
on the <code>#include</code> depth). The compiler then solves the
problem using binary arithmetic based on whether particular symbols are
defined or not.</p>
<p>To loop, the program <code>#include</code>s itself. This is, of
course, expensive; one compile we did with <code>n=14</code> took about
fifty minutes to compile on our system (compiling with <code>n=15</code>
caused our system to crash).</p>
<p>The resulting program that the compiler generates simply prints out
the answer. Did I say “simply”? Actually, the whole resulting program
consists of a single <code>printf(3)</code> statement, consisting of a
massive string constant of length <code>35*(2^n-1)</code>, followed by
<code>3*(2^n-1)</code> integers which get formatted into the string. For
our <code>n=14</code> run, this adds up to a string constant of length
573405, followed by 49149 integers delimited by commas. (Generating the
string constant depends on the ANSI C feature in which adjacent
character strings are concatenated; a version that does not use this
feature has been included for people who can only run K&amp;R). A good
way to see the resulting program (on a Unix system) is to do the
command</p>
<p>A default value of <code>5</code> will be used for <code>n</code> if you do not define
it on the command line. The value of <code>n</code> cannot be greater than
fifteen (the compiler we used to test has a limit on the <code>#include</code>
depth). The compiler then solves the problem using binary
arithmetic based on whether particular symbols are defined or not.</p>
<p>To loop, the program <code>#include</code>s itself. This is, of course, expensive; one
compile we did with <code>n=14</code> took about fifty minutes to compile on our system
(compiling with <code>n=15</code> caused our system to crash).</p>
<p>The resulting program that the compiler generates simply
prints out the answer. Did I say “simply”? Actually, the
whole resulting program consists of a single <code>printf(3)</code> statement,
consisting of a massive string constant of length <code>35*(2^n-1)</code>,
followed by <code>3*(2^n-1)</code> integers which get formatted into the
string. For our <code>n=14</code> run, this adds up to a string constant
of length 573405, followed by 49149 integers delimited by
commas. (Generating the string constant depends on the
ANSI C feature in which adjacent character strings are
concatenated; a version that does not use this feature has been
included for people who can only run K&amp;R). A good way to see
the resulting program (on a Unix system) is to do the command</p>
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="fu">gcc</span> hanoi.c <span class="at">-E</span> <span class="at">-Dn</span><span class="op">=</span>5 <span class="kw">|</span> <span class="fu">grep</span> <span class="at">-v</span> <span class="dt">\#</span> <span class="kw">|</span> <span class="fu">grep</span> <span class="at">-v</span> ^<span class="dt">\$</span></span></code></pre></div>
<p>For an odd number of disks, the program will provide a solution
wherein the disks end up on peg 2; for an even number of disks, they
will end on peg 3. This should provide some hint as to what sort of
algorithm is used.</p>
<p>We have included a <a href="spoiler.c">spoiler</a> version of the
program, with meaningful symbol names and comments, but we encourage you
<p>For an odd number of disks, the program will provide a
solution wherein the disks end up on peg 2; for an even
number of disks, they will end on peg 3. This should
provide some hint as to what sort of algorithm is used.</p>
<p>We have included a <a href="spoiler.c">spoiler</a> version of the program, with
meaningful symbol names and comments, but we encourage you
to try to decipher the program without it…</p>
<pre><code>begin 444 spoiler.c
M(VEF;F1E9B`@24Y)5$E!3$E:140*&quot;B\J&quot;B`J(&quot;!)9B!N(&amp;ES;B=T(&amp;1E9FEN
@@ -296,56 +293,35 @@ M&quot;@HC96YD:68@(&quot;\J(&quot;-E;&#39;-E(&amp;]F(&quot;-I9FYD968@24Y)5$E!3$E
`
end
</code></pre>
<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>
<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-1995vanschnitz"><a name="inventory"></a>Inventory
for 1995/vanschnitz</h1>
<h1 id="inventory-for-1995vanschnitz"><a name="inventory"></a>Inventory for 1995/vanschnitz</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/1995/vanschnitz/vanschnitz.c">vanschnitz.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.alt.c">vanschnitz.alt.c</a>
- alternative source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.orig.c">vanschnitz.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/try.sh">try.sh</a>
- how to run</li>
<li><a href="1995_vanschnitz.tar.bz2">1995_vanschnitz.tar.bz2</a> -
download entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.c">vanschnitz.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.alt.c">vanschnitz.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.orig.c">vanschnitz.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/try.sh">try.sh</a> - how to run</li>
<li><a href="1995_vanschnitz.tar.bz2">1995_vanschnitz.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/1995/vanschnitz/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/.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/1995/vanschnitz/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/.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/1995/vanschnitz/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->