force use of pandoc version >= 3.1.12.2
The `bin/pandoc-wrapper.sh` tool will verify that the ssytem has a recent enough version of `pandoc(1)`. We explain why we insist on `pandoc(1)`. version >= 3.1.12.2 in comments where the $PANDOC_MIN_VERSION is set. Added `--wrap=preserve` as a default argument to `pandoc(1)`. While this change will impact every HTML file generated, we believe this will improve the ability of someone to look at the generated HTML and correlate with the original markdown. Changed `bin/pandoc-wrapper.sh` VERSION from "1.4.2 2024-03-17" to "1.4.3 2024-03-18". Performed `make www` to achieve all of the above and to generate HTML using the new `--wrap=preserve` `pandoc(1)` mode.
This commit is contained in:
1 parent
9eb7a54e9f
commit
b0b212acb1
402 files changed
+37061
-55132
No files matched your search
+25
-46
@@ -130,8 +130,8 @@
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Mark_Biggar">Mark Biggar</a><br>
|
||||
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown
|
||||
location</em> <br><br></li>
|
||||
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 -->
|
||||
@@ -148,72 +148,51 @@ location</em> <br><br></li>
|
||||
<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="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>By changing the compile line you can make this program do anything
|
||||
you want. This is a very efficient way to transfer source, though it
|
||||
<p>By changing the compile line you can make this program do anything you
|
||||
want. This is a very efficient way to transfer source, though it
|
||||
increases the size of Makefiles.</p>
|
||||
<p>With only slight variations, this program can be set to many uses.
|
||||
Consider how easy it would be to release <code>Unix</code> source in
|
||||
this form; so what if the Makefiles grow a little! :-)</p>
|
||||
Consider how easy it would be to release <code>Unix</code> source in this form;
|
||||
so what if the Makefiles grow a little! :-)</p>
|
||||
<p>One vendor’s lint got hung in an infinite loop over this entry!</p>
|
||||
<p>FYI: We will let Mark get away with this truly sick entry this time,
|
||||
but for the future on we have placed a limit on the size of a compile
|
||||
line.</p>
|
||||
<p>NOTE: originally we made a comment in <a
|
||||
href="../../authors.html#Larry_Wall">Larry Wall</a>’s <a
|
||||
href="../wall/index.html">1987/wall</a> entry regarding Mark’s
|
||||
contribution but it seems to have been lost in time. If anyone knows
|
||||
about its whereabouts we’d appreciate letting us know. Thanks!</p>
|
||||
<p>FYI: We will let Mark get away with this truly sick entry this time, but
|
||||
for the future on we have placed a limit on the size of a compile line.</p>
|
||||
<p>NOTE: originally we made a comment in <a href="../../authors.html#Larry_Wall">Larry Wall</a>’s
|
||||
<a href="../wall/index.html">1987/wall</a> entry regarding Mark’s contribution but it seems to have
|
||||
been lost in time. If anyone knows about its whereabouts we’d appreciate letting
|
||||
us know. Thanks!</p>
|
||||
<p>Passes BSD and UTS lint. At least one version of lint is thrown into
|
||||
an infinite loop by this entry.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>No remarks were provided by the author.</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-1987biggar"><a name="inventory"></a>Inventory for
|
||||
1987/biggar</h1>
|
||||
<h1 id="inventory-for-1987biggar"><a name="inventory"></a>Inventory for 1987/biggar</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/1987/biggar/biggar.c">biggar.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/biggar.orig.c">biggar.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a href="1987_biggar.tar.bz2">1987_biggar.tar.bz2</a> - download
|
||||
entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/biggar.c">biggar.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/biggar.orig.c">biggar.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="1987_biggar.tar.bz2">1987_biggar.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/1987/biggar/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/.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/1987/biggar/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/.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/1987/biggar/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/biggar/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
-45
@@ -129,9 +129,9 @@
|
||||
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Paul_Heckbert">Paul
|
||||
Heckbert</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#Paul_Heckbert">Paul Heckbert</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 -->
|
||||
@@ -141,75 +141,53 @@ Heckbert</a><br> Location: <a href="../../location.html#US">US</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>On System V systems, we had to compile with
|
||||
<code>-Dindex=strchr</code>. To compile on a 16 bit machine, change
|
||||
300000 to 30000.</p>
|
||||
<p>On System V systems, we had to compile with <code>-Dindex=strchr</code>.
|
||||
To compile on a 16 bit machine, change 300000 to 30000.</p>
|
||||
<h2 id="to-use">To use:</h2>
|
||||
<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">./heckbert</span> col <span class="op"><</span> file</span></code></pre></div>
|
||||
<p>where col is the number of columns to fold at and file is the file to
|
||||
fold.</p>
|
||||
<p>where col is the number of columns to fold at and file is the file to fold.</p>
|
||||
<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="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>Folding at the wrong length may be equivalent to a “Spindle or
|
||||
Mutilate” operation. For example:</p>
|
||||
<p>Folding at the wrong length may be equivalent to a “Spindle or Mutilate” operation. For example:</p>
|
||||
<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">./heckbert</span> 40 <span class="op"><</span> heckbert.c <span class="op">></span> ph.c <span class="kw">;</span> <span class="fu">make</span> ph <span class="kw">;</span> <span class="ex">./ph</span> 20 <span class="op"><</span> heckbert.c <span class="op">></span> bar.c <span class="kw">;</span> <span class="fu">make</span> bar</span></code></pre></div>
|
||||
<p>Try not to <a
|
||||
href="https://repository.library.brown.edu/studio/item/bdr:788264/PDF/">Fold,
|
||||
Spindle or Mutilate</a> files. :-)</p>
|
||||
<p>Try not to
|
||||
<a href="https://repository.library.brown.edu/studio/item/bdr:788264/PDF/">Fold, Spindle or Mutilate</a>
|
||||
files. :-)</p>
|
||||
<p>The judges used this program to fold up<br />
|
||||
very long lines which the BSD fold(1)<br />
|
||||
was unable to process. This program has<br />
|
||||
been added to the contest tool chest.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>No remarks were provided by the author.</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-1987heckbert"><a name="inventory"></a>Inventory
|
||||
for 1987/heckbert</h1>
|
||||
<h1 id="inventory-for-1987heckbert"><a name="inventory"></a>Inventory for 1987/heckbert</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/1987/heckbert/heckbert.c">heckbert.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/heckbert.orig.c">heckbert.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a href="1987_heckbert.tar.bz2">1987_heckbert.tar.bz2</a> - download
|
||||
entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/heckbert.c">heckbert.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/heckbert.orig.c">heckbert.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="1987_heckbert.tar.bz2">1987_heckbert.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/1987/heckbert/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/.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/1987/heckbert/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/.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/1987/heckbert/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/heckbert/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
-48
@@ -129,9 +129,9 @@
|
||||
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Spencer_Hines">Spencer
|
||||
Hines</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
|
||||
<em>Unknown location</em> <br><br></li>
|
||||
<li>Name: <a href="../../authors.html#Spencer_Hines">Spencer Hines</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 -->
|
||||
@@ -147,69 +147,44 @@ Hines</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
|
||||
<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="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>This program was designed to maximize the bother function for
|
||||
structured programmers. This program takes <code>goto</code> statements
|
||||
to their logical conclusion. The layout and choice of names are
|
||||
classic.</p>
|
||||
structured programmers. This program takes <code>goto</code> statements to their
|
||||
logical conclusion. The layout and choice of names are classic.</p>
|
||||
<p>We consider this to be a beautiful counter-example for Frank Rubin’s
|
||||
letter to ACM form titled: <em><a
|
||||
href="https://web.archive.org/web/20090320002214/http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf">“‘GOTO
|
||||
Considered Harmful’ Considered Harmful”</a></em>. See the Communications
|
||||
of the ACM, March 1987, Page 195-196.</p>
|
||||
letter to ACM form titled: <em><a href="https://web.archive.org/web/20090320002214/http://www.ecn.purdue.edu/ParaMount/papers/rubin87goto.pdf">“‘GOTO Considered Harmful’ Considered
|
||||
Harmful”</a></em>.
|
||||
See the Communications of the ACM, March 1987, Page 195-196.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>No remarks were provided by the author.</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-1987hines"><a name="inventory"></a>Inventory for
|
||||
1987/hines</h1>
|
||||
<h1 id="inventory-for-1987hines"><a name="inventory"></a>Inventory for 1987/hines</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/1987/hines/hines.c">hines.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/hines.orig.c">hines.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/goto.c">goto.c</a>
|
||||
- sample source full of goto statements</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/goto.txt">goto.txt</a>
|
||||
- a file to goto and see</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a href="1987_hines.tar.bz2">1987_hines.tar.bz2</a> - download entry
|
||||
source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/hines.c">hines.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/hines.orig.c">hines.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/goto.c">goto.c</a> - sample source full of goto statements</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/goto.txt">goto.txt</a> - a file to goto and see</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="1987_hines.tar.bz2">1987_hines.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/1987/hines/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/.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/1987/hines/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/.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/1987/hines/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/hines/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
+34
-50
@@ -123,68 +123,52 @@
|
||||
<!-- 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="fourth-international-obfuscated-c-code-contest">Fourth
|
||||
International Obfuscated C Code Contest</h1>
|
||||
<p>View the <code>index.html</code> web page for the given winning entry
|
||||
for information on how compile it and how to 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 Author’s remarks for even more
|
||||
details.</p>
|
||||
<p>The <a href="rules.txt">rules for 1997</a> suggested even more
|
||||
categories than in 1986. Hints for what to do and not to do were also
|
||||
given in the <a href="rules.txt">rules</a>. For example, a simple
|
||||
excessive abuse of <code>/lib/cpp</code> was discouraged unless the
|
||||
abuse was unusual. The mailboxes for the contest were moved from nsc to
|
||||
amdahl. The practice of posting a preliminary set of rules for the next
|
||||
year was started this year.</p>
|
||||
<p><a href="rules.txt">Rules</a> and results were posted to comp.lang.c
|
||||
and comp.unix.wizards with an announcement in news.announce.important.
|
||||
<a
|
||||
href="https://www.vintage-computer.com/publications.php?microsystemsjournal">Micro/Systems
|
||||
Journal</a> published the 1987 winning entries. <a
|
||||
href="https://www.amazon.com/stores/Mark-R.-Horton/author/B001HPGRB8">Mark
|
||||
R. Horton</a> included a version of the <a
|
||||
href="../years.html#1987">1987 winning entries</a> in an appendix of his
|
||||
C book <a
|
||||
href="https://www.amazon.com/Portable-Software-Mark-R-Horton/dp/0138680507">Portable
|
||||
C Software International Edition</a>. The first announcement of winning
|
||||
entries at the Summer 87 USENIX was helped by a small fly that danced
|
||||
all over the foils.</p>
|
||||
<h1 id="fourth-international-obfuscated-c-code-contest">Fourth International Obfuscated C Code Contest</h1>
|
||||
<p>View the <code>index.html</code> web page for the given winning entry for information on how
|
||||
compile it and how to 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
|
||||
Author’s remarks for even more details.</p>
|
||||
<p>The <a href="rules.txt">rules for 1997</a> suggested even more categories than in 1986.
|
||||
Hints for what to do and not to do were also given in the <a href="rules.txt">rules</a>.
|
||||
For example, a simple excessive abuse of <code>/lib/cpp</code> was discouraged unless the
|
||||
abuse was unusual. The mailboxes for the contest were moved from nsc to amdahl.
|
||||
The practice of posting a preliminary set of rules for the next year was started
|
||||
this year.</p>
|
||||
<p><a href="rules.txt">Rules</a> and results were posted to comp.lang.c and comp.unix.wizards
|
||||
with an announcement in news.announce.important.
|
||||
<a href="https://www.vintage-computer.com/publications.php?microsystemsjournal">Micro/Systems Journal</a>
|
||||
published the 1987 winning entries. <a href="https://www.amazon.com/stores/Mark-R.-Horton/author/B001HPGRB8">Mark R.
|
||||
Horton</a> included
|
||||
a version of the <a href="../years.html#1987">1987 winning entries</a> in an appendix of his C book
|
||||
<a href="https://www.amazon.com/Portable-Software-Mark-R-Horton/dp/0138680507">Portable C Software International
|
||||
Edition</a>.
|
||||
The first announcement of winning entries at the Summer 87 USENIX was helped by a small
|
||||
fly that danced all over the foils.</p>
|
||||
<h2 id="final-comments">Final Comments</h2>
|
||||
<p><strong>IMPORTANT NOTE</strong>: 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>: 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>
|
||||
<h1 id="copyright-and-license">Copyright and License</h1>
|
||||
<p>Copyright (c) 1987,2023, Landon Curt Noll and Larry Bassel. 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) 1987,2023, Landon Curt Noll and Larry Bassel. 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-1987---the-4th-ioccc"><a name=inventory></a><a name=1987></a>Winning
|
||||
Entries of 1987 - The 4th IOCCC</h1>
|
||||
<p><strong>Download IOCCC</strong> <a
|
||||
href="1987/ioccc.1987.tar.bz2">1987 entry source</a></p>
|
||||
<h1 id="winning-entries-of-1987---the-4th-ioccc"><a name=inventory></a><a name=1987></a>Winning Entries of 1987 - The 4th IOCCC</h1>
|
||||
<p><strong>Download IOCCC</strong> <a href="1987/ioccc.1987.tar.bz2">1987 entry source</a></p>
|
||||
<ul>
|
||||
<li><a href="biggar/index.html">1987/biggar</a> - Best Abuse of the
|
||||
Rules</li>
|
||||
<li><a href="heckbert/index.html">1987/heckbert</a> - Best Obfuscator of
|
||||
Programs</li>
|
||||
<li><a href="biggar/index.html">1987/biggar</a> - Best Abuse of the Rules</li>
|
||||
<li><a href="heckbert/index.html">1987/heckbert</a> - Best Obfuscator of Programs</li>
|
||||
<li><a href="hines/index.html">1987/hines</a> - Worst Style</li>
|
||||
<li><a href="korn/index.html">1987/korn</a> - Best One Liner</li>
|
||||
<li><a href="lievaart/index.html">1987/lievaart</a> - Grand Prize</li>
|
||||
<li><a href="wall/index.html">1987/wall</a> - Most Useful
|
||||
Obfuscation</li>
|
||||
<li><a href="wall/index.html">1987/wall</a> - Most Useful Obfuscation</li>
|
||||
<li><a href="westley/index.html">1987/westley</a> - Best Layout</li>
|
||||
</ul>
|
||||
<p> <strong>Jump to:</strong> <a href="#">top</a></p>
|
||||
|
||||
+31
-55
@@ -130,8 +130,8 @@
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#David_Korn">David Korn</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 -->
|
||||
@@ -144,26 +144,22 @@ America</em> (<em>United States</em>) <br><br></li>
|
||||
<h2 id="to-use">To use:</h2>
|
||||
<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">./korn</span></span></code></pre></div>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>The Judges believe that this is the best one line entry ever
|
||||
received. Compile on a UNIX system, or at least one using a C
|
||||
implementation that fakes it. Very few people are able to determine what
|
||||
this program does by visual inspection. I suggest that you stop reading
|
||||
this section right now and see if you are one of the few people who
|
||||
can.</p>
|
||||
<p>The Judges believe that this is the best one line entry ever received.
|
||||
Compile on a UNIX system, or at least one using a C implementation that
|
||||
fakes it. Very few people are able to determine what this program
|
||||
does by visual inspection. I suggest that you stop reading this
|
||||
section right now and see if you are one of the few people who can.</p>
|
||||
<p>Several points are important to understand this program:</p>
|
||||
<ol type="1">
|
||||
<li><p>What is the symbol <code>unix</code> and what is its value in the
|
||||
program? Clearly <code>unix</code> is not a function, and since
|
||||
<code>unix</code> is not declared to be a data type (such as
|
||||
<code>int</code>, <code>char</code>, <code>struct foo</code>,
|
||||
<code>enum</code>, …) what must <code>unix</code> be?</p></li>
|
||||
<li><p>What is the value of the symbol <code>"have"</code>? (hint: the
|
||||
value is NOT 4 characters, or <code>'h'</code>, or a string) Consider
|
||||
the fact that:</p></li>
|
||||
<li><p>What is the symbol <code>unix</code> and what is its value in the program? Clearly
|
||||
<code>unix</code> is not a function, and since <code>unix</code> is not declared to be a data type
|
||||
(such as <code>int</code>, <code>char</code>, <code>struct foo</code>, <code>enum</code>, …) what must <code>unix</code> be?</p></li>
|
||||
<li><p>What is the value of the symbol <code>"have"</code>? (hint: the value is NOT 4
|
||||
characters, or <code>'h'</code>, or a string) Consider the fact that:</p></li>
|
||||
</ol>
|
||||
<div class="sourceCode" id="cb3"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="dt">char</span> <span class="op">*</span>x<span class="op">;</span></span></code></pre></div>
|
||||
<p>defines a pointer to a <code>char</code> (i.e. an address), and that
|
||||
the <code>=</code> assigns things of compatible types. Since:</p>
|
||||
<p>defines a pointer to a <code>char</code> (i.e. an address), and that the <code>=</code> assigns
|
||||
things of compatible types. Since:</p>
|
||||
<div class="sourceCode" id="cb4"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a>x <span class="op">=</span> <span class="st">"have"</span><span class="op">;</span></span></code></pre></div>
|
||||
<p>is legal C, what type of value is <code>"have"</code>?</p>
|
||||
<ol start="3" type="1">
|
||||
@@ -172,61 +168,41 @@ the <code>=</code> assigns things of compatible types. Since:</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>x<span class="op">[</span><span class="dv">3</span><span class="op">]</span> <span class="op">*(</span>x<span class="op">+</span><span class="dv">3</span><span class="op">)</span> <span class="op">*(</span><span class="dv">3</span><span class="op">+</span>x<span class="op">)</span></span></code></pre></div>
|
||||
<p>since addition is commutative. What can be said about this value?</p>
|
||||
<div class="sourceCode" id="cb6"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="dv">3</span><span class="op">[</span>x<span class="op">]</span></span></code></pre></div>
|
||||
<p><a
|
||||
href="https://news.slashdot.org/story/01/02/06/2030205/david-korn-tells-all">David
|
||||
Korn</a>’s <a
|
||||
href="https://en.wikipedia.org/wiki/KornShell">/bin/ksh</a> provides us
|
||||
with a greatly improved version of the <a
|
||||
href="https://en.wikipedia.org/wiki/Bourne_shell">/bin/sh</a>. The
|
||||
source for <a
|
||||
href="https://en.wikipedia.org/wiki/Version_7_Unix">v7</a>’s /bin/sh
|
||||
<p><a href="https://news.slashdot.org/story/01/02/06/2030205/david-korn-tells-all">David
|
||||
Korn</a>’s
|
||||
<a href="https://en.wikipedia.org/wiki/KornShell">/bin/ksh</a> provides us with a greatly
|
||||
improved version of the <a href="https://en.wikipedia.org/wiki/Bourne_shell">/bin/sh</a>.
|
||||
The source for <a href="https://en.wikipedia.org/wiki/Version_7_Unix">v7</a>’s /bin/sh
|
||||
greatly inspired this contest.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>No remarks were provided by the author.</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-1987korn"><a name="inventory"></a>Inventory for
|
||||
1987/korn</h1>
|
||||
<h1 id="inventory-for-1987korn"><a name="inventory"></a>Inventory for 1987/korn</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/1987/korn/korn.c">korn.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/korn.orig.c">korn.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a href="1987_korn.tar.bz2">1987_korn.tar.bz2</a> - download entry
|
||||
source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/korn.c">korn.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/korn.orig.c">korn.orig.c</a> - original source</li>
|
||||
<li><a href="1987_korn.tar.bz2">1987_korn.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/1987/korn/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/.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/1987/korn/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/.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/1987/korn/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/korn/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
+36
-60
@@ -129,9 +129,9 @@
|
||||
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Roemer_B_Lievaart">Roemer B.
|
||||
Lievaart</a><br> Location: <a href="../../location.html#NL">NL</a> -
|
||||
<em>Kingdom of the Netherlands</em> (<em>Netherlands</em>) <br><br></li>
|
||||
<li>Name: <a href="../../authors.html#Roemer_B_Lievaart">Roemer B. Lievaart</a><br>
|
||||
Location: <a href="../../location.html#NL">NL</a> - <em>Kingdom of the Netherlands</em> (<em>Netherlands</em>)
|
||||
<br><br></li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
|
||||
@@ -145,83 +145,59 @@ Lievaart</a><br> Location: <a href="../../location.html#NL">NL</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">./lievaart</span></span>
|
||||
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="co"># enter a level and start playing as described below</span></span></code></pre></div>
|
||||
<h2 id="try">Try:</h2>
|
||||
<p>To see what it would have looked like without the size
|
||||
restrictions:</p>
|
||||
<p>To see what it would have looked like without the size restrictions:</p>
|
||||
<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">./lievaart2</span></span>
|
||||
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a><span class="co"># enter a level and start playing as described below</span></span></code></pre></div>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>We believe that you too will be amazed at just how much power
|
||||
Mr. Lievaart packed into 1024 bytes!</p>
|
||||
<p>This Plays the game of <a
|
||||
href="https://en.wikipedia.org/wiki/Reversi">Reversi (Othello)</a>!
|
||||
Compile and run. It then asks for a playing level. Enter 0-10
|
||||
(easy-hard). It then asks for your move. A move is a number within
|
||||
11-88, or 99 to pass. Illegal moves (except for an illegal pass) are
|
||||
rejected. Then the computer does its move (or a 0 to pass), until the
|
||||
board is full.</p>
|
||||
<p>It plays rather well, for such a small program! Lievaart had to leave
|
||||
out the board printing routine, so you’ll have to take a real game board
|
||||
to play it (or see below). … Also due to space-limitations (the rules
|
||||
for 1987 had a limit of 1024 byes), Lievaart took out the
|
||||
passing-handler, which makes its ending-game rather poor. But further it
|
||||
knows all the rules, uses <a
|
||||
href="https://en.wikipedia.org/wiki/Alpha-beta_pruning">alpha-beta
|
||||
pruning</a>, and it plays for instance on mobility(!). Most important:
|
||||
it can play a pretty good game of Reversi!</p>
|
||||
<p>The Author was kind enough to supply the fully functional version of
|
||||
the program. The file <a href="lievaart2.c">lievaart2.c</a> contains
|
||||
what the program would have been without the size restriction. This
|
||||
version has the full end game logic and displays the board after each
|
||||
move! See above for how to use this.</p>
|
||||
<p>We believe that you too will be amazed at just how much power Mr. Lievaart
|
||||
packed into 1024 bytes!</p>
|
||||
<p>This Plays the game of <a href="https://en.wikipedia.org/wiki/Reversi">Reversi
|
||||
(Othello)</a>! Compile and run. It then
|
||||
asks for a playing level. Enter 0-10 (easy-hard). It then asks for
|
||||
your move. A move is a number within 11-88, or 99 to pass. Illegal
|
||||
moves (except for an illegal pass) are rejected. Then the computer
|
||||
does its move (or a 0 to pass), until the board is full.</p>
|
||||
<p>It plays rather well, for such a small program! Lievaart had to leave out the
|
||||
board printing routine, so you’ll have to take a real game board to play it (or
|
||||
see below). … Also due to space-limitations (the rules for 1987 had a limit
|
||||
of 1024 byes), Lievaart took out the passing-handler, which makes its
|
||||
ending-game rather poor. But further it knows all the rules, uses <a href="https://en.wikipedia.org/wiki/Alpha-beta_pruning">alpha-beta
|
||||
pruning</a>, and it plays for
|
||||
instance on mobility(!). Most important: it can play a pretty good game of Reversi!</p>
|
||||
<p>The Author was kind enough to supply the fully functional version of the
|
||||
program. The file <a href="lievaart2.c">lievaart2.c</a> contains what the program would
|
||||
have been without the size restriction. This version has the full end game
|
||||
logic and displays the board after each move! See above for how to use this.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>No remarks were provided by the author.</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-1987lievaart"><a name="inventory"></a>Inventory
|
||||
for 1987/lievaart</h1>
|
||||
<h1 id="inventory-for-1987lievaart"><a name="inventory"></a>Inventory for 1987/lievaart</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/1987/lievaart/lievaart.c">lievaart.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/lievaart.orig.c">lievaart.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/lievaart2.c">lievaart2.c</a>
|
||||
- source without size restriction</li>
|
||||
<li><a href="1987_lievaart.tar.bz2">1987_lievaart.tar.bz2</a> - download
|
||||
entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/lievaart.c">lievaart.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/lievaart.orig.c">lievaart.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/lievaart2.c">lievaart2.c</a> - source without size restriction</li>
|
||||
<li><a href="1987_lievaart.tar.bz2">1987_lievaart.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/1987/lievaart/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/.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/1987/lievaart/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/.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/1987/lievaart/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/lievaart/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
+26
-47
@@ -130,8 +130,8 @@
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Larry_Wall">Larry Wall</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 -->
|
||||
@@ -149,8 +149,8 @@ America</em> (<em>United States</em>) <br><br></li>
|
||||
<span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a><span class="co"># enter some strings or numbers, depending on command</span></span></code></pre></div>
|
||||
<h2 id="try">Try:</h2>
|
||||
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
|
||||
<p>You may of course run the commands manually and enter text as you
|
||||
wish. For instance you might try one or both of:</p>
|
||||
<p>You may of course run the commands manually and enter text as you wish. For
|
||||
instance you might try one or both of:</p>
|
||||
<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">./wall</span> <span class="kw">|</span> <span class="fu">bc</span></span>
|
||||
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a></span>
|
||||
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a><span class="ex">./wall</span> <span class="kw">|</span> <span class="fu">cat</span></span></code></pre></div>
|
||||
@@ -158,67 +158,46 @@ wish. For instance you might try one or both of:</p>
|
||||
<pre><code>x*x
|
||||
2^x
|
||||
quit # for the cat version</code></pre>
|
||||
<p>which the script does through a pipeline except that here you can
|
||||
enter more text if you wish, line by line.</p>
|
||||
<p>which the script does through a pipeline except that here you can enter more
|
||||
text if you wish, line by line.</p>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p>What we found amazing was how the flow of control was transferred
|
||||
between subroutines. Careful inspection will show that the array of
|
||||
pointers to functions named <code>vi</code> refers to functions which
|
||||
seem to not be directly called. Even so, these pointers to functions are
|
||||
being used as an argument to <code>signal(3)</code> (used both with and
|
||||
without an arg - but how?). Can you determine why this is being done and
|
||||
how it is being exploited?</p>
|
||||
<p>Some compilers complained about this file, so we changed:
|
||||
<code>=++I</code> to <code>= ++I</code>.</p>
|
||||
<p>What we found amazing was how the flow of control was transferred between
|
||||
subroutines. Careful inspection will show that the array of pointers to
|
||||
functions named <code>vi</code> refers to functions which seem to not be directly called.
|
||||
Even so, these pointers to functions are being used as an argument to
|
||||
<code>signal(3)</code> (used both with and without an arg - but how?). Can you determine
|
||||
why this is being done and how it is being exploited?</p>
|
||||
<p>Some compilers complained about this file, so we changed: <code>=++I</code> to <code>= ++I</code>.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>No remarks were provided by the author.</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-1987wall"><a name="inventory"></a>Inventory for
|
||||
1987/wall</h1>
|
||||
<h1 id="inventory-for-1987wall"><a name="inventory"></a>Inventory for 1987/wall</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/1987/wall/wall.c">wall.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/wall.orig.c">wall.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a href="1987_wall.tar.bz2">1987_wall.tar.bz2</a> - download entry
|
||||
source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/wall.c">wall.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/wall.orig.c">wall.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="1987_wall.tar.bz2">1987_wall.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/1987/wall/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/.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/1987/wall/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/.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/1987/wall/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/wall/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
+17
-34
@@ -129,9 +129,9 @@
|
||||
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Brian_Westley">Brian
|
||||
Westley</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#Brian_Westley">Brian Westley</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,56 +144,39 @@ Westley</a><br> Location: <a href="../../location.html#US">US</a> -
|
||||
<h2 id="to-use">To use:</h2>
|
||||
<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">./westley</span></span></code></pre></div>
|
||||
<h2 id="judges-remarks">Judges’ remarks:</h2>
|
||||
<p><code>putchar()</code> must exist in the C library and not just as a
|
||||
macro. If it fails to compile, bug your OS/compiler vendor.</p>
|
||||
<p><code>putchar()</code> must exist in the C library and not just as a macro.
|
||||
If it fails to compile, bug your OS/compiler vendor.</p>
|
||||
<p>Line by line symmetry performed better than any C beautifier. Think
|
||||
of if it as a C ink blot. :-)</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>No remarks were provided by the author.</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-1987westley"><a name="inventory"></a>Inventory for
|
||||
1987/westley</h1>
|
||||
<h1 id="inventory-for-1987westley"><a name="inventory"></a>Inventory for 1987/westley</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/1987/westley/westley.c">westley.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/westley.orig.c">westley.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a href="1987_westley.tar.bz2">1987_westley.tar.bz2</a> - download
|
||||
entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/westley.c">westley.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/westley.orig.c">westley.orig.c</a> - original source</li>
|
||||
<li><a href="1987_westley.tar.bz2">1987_westley.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/1987/westley/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/.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/1987/westley/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/.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/1987/westley/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1987/westley/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
Reference in new issue
Block a user