add rules, guidelines, fix HTML code, move compressed tarball in inventory

By changing the _inventory_order_ of the compressed tarball from
**100000** to **1415926535**, the compressed tarball will land at
the top of the secondary file list and remain still easy to find.

Updated the `manifest.numbers` spreadsheet and rebuilt
the `.entry.json` files.

Added `next/` directory to hold the next IOCCC rules and guidelines.
Added `next/README.md` that `bin/gen-top-html.sh` uses to form
the `next/index.html` file.

Added _Rules and Guidelines_ link to the sidenav bar to link to the
`next/index.html` file.

Added _IOCCC Rules_ as `next/rules.md` that `bin/gen-top-html.sh`
uses to form the `next/rules.html` file.

Added _IOCCC Guidelines_ as `next/guidelines.md` that `bin/gen-top-html.sh`
uses to form the `next/guidelines.html` file.

Changed `bin/gen-top-html.sh` VERSION from "1.2.4 2024-04-13"
to "1.3 2024-04-14".

Prevent `pandoc(1)` from interpreting the commented out language
of a markdown code block as a code class.  So a markdown such as:

````
``` <!---sh-->
...
```
````

that produced HTML of the form:

```html
<pre class="&lt;!---sh--&gt;"><code>...</code></pre>
```

will now produce HTML of the form:

```html
<pre><code>...</code></pre>
```

NOTE: Before when the language of a markdown code block
was not commented, the HTML produced by `pandoc(1)` was
oddly indented with extra whitespace on the first line
of the code block.  While commenting out the language
of the code block removed some of the odd intending,
it left a weird class in the HTML pre block that
surrounded the HTML code block.  This hack prevents
`pandoc(1)` from assigning a class to the HTML pre block.

Changed `in/md2html.sh` VERSION from "1.2.1 2024-04-13"
to "1.3 2024-04-14".

Added `make gen_sitemap` to end of both `make www` and `make
quick_www` in top level Makefile.

Ram `make www` to test under macOS and to perform the above.

**IMPORTANT NOTE**: The current `next/rules.md` and `next/guidelines.md`
are simply the 2020 IOCCC Rules and Guidelines converted into
markdown form.  There are **NOT** the Rules and Guidelines that
will be used the IOCCC MOCK, nor the next IOCCC.

TODO: Improve the `bin/gen-status.sh` tool to modify the top of the
      `next/rules.md` and `next/guidelines.md` files to keep them
      in sync with the _contest_status_ as found in `status.json`.

TODO: Improve the look and feel of the `next/rules.md` and
      `next/guidelines.md` markdown files.
This commit is contained in:
Landon Curt Noll committed 2024-04-14 16:54:24 -07:00
1 parent a672335d2d
commit 518a6336d0
734 files changed
+7919 -4119

No files matched your search

+1 -1
View File
@@ -52,7 +52,7 @@
},
{
"file_path" : "1990_baruch.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+6 -5
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -144,7 +145,7 @@ Location: <a href="../../location.html#IL">IL</a> - <em>State of Israel</em> (<e
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<p>There is an alternate version for those using Turbo-C or MSC. See <a href="#alternate-code">alternate
code</a> below for details.</p>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
@@ -152,10 +153,10 @@ code</a> below for details.</p>
<pre><code> STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#1990_baruch">1990 baruch bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> echo 4 | ./baruch
<pre><code> echo 4 | ./baruch
echo 7 | ./baruch</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="alternate-code">Alternate code:</h2>
<p>This alternate code is for the <a href="https://en.wikipedia.org/wiki/0">very few</a>
<a href="https://en.wikipedia.org/wiki/Microsoft_Windows">users</a>
@@ -165,7 +166,7 @@ the <code>" #Q"</code> string was not changed as that showed worse looking outpu
of improved output though admittedly we have no way to test the compilers in
question. YMMV.</p>
<h3 id="alternate-build">Alternate build:</h3>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>baruch.alt</code> as you would <code>baruch</code>.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -227,10 +228,10 @@ to replace the <code>" #Q"</code> string with <code>" \261\2"</code>.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/baruch/baruch.alt.c">baruch.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/baruch/baruch.orig.c">baruch.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/baruch/try.sh">try.sh</a> - how to run</li>
<li><a href="1990_baruch.tar.bz2">1990_baruch.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_baruch.tar.bz2">1990_baruch.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/baruch/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/baruch/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -35,7 +35,7 @@
},
{
"file_path" : "1990_cmills.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+5 -4
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,11 +142,11 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./cmills [starting_cash]</code></pre>
<pre><code> ./cmills [starting_cash]</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./cmills 5000</code></pre>
<pre><code> ./cmills 5000</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The Makefile uses several <code>-D</code> defines. The following is is a list of the macros
that may be changed:</p>
@@ -194,10 +195,10 @@ times, and it will show all hands as they are played.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/cmills/cmills.c">cmills.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/cmills/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/cmills/cmills.orig.c">cmills.orig.c</a> - original source</li>
<li><a href="1990_cmills.tar.bz2">1990_cmills.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_cmills.tar.bz2">1990_cmills.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/cmills/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/cmills/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "1990_dds.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+5 -4
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,12 +142,12 @@ Location: <a href="../../location.html#GR">GR</a> - <em>Hellenic Republic</em> (
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./dds</code></pre>
<pre><code> ./dds</code></pre>
<h2 id="try">Try:</h2>
<p>Give the following lines as input:</p>
<pre class="&lt;!---basic--&gt;"><code> OLD LANDER.BAS
<pre><code> OLD LANDER.BAS
RUN</code></pre>
<p>NOTE: this entry is probably one of the only times CAPS LOCK might be worth
having (though still not useful enough to enable :-) ) as all input has to be
@@ -256,10 +257,10 @@ fits in an <code>80*25</code> screen).</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dds/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dds/dds.orig.c">dds.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dds/LANDER.BAS">LANDER.BAS</a> - BASIC source code</li>
<li><a href="1990_dds.tar.bz2">1990_dds.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_dds.tar.bz2">1990_dds.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dds/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dds/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "1990_dg.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+8 -7
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,17 +142,17 @@ Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em></l
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> echo foo bar | ./dg</code></pre>
<pre><code> echo foo bar | ./dg</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>Some C preprocessors got confused about single quotes in certain cases.
In particular, the following source line:</p>
<pre class="&lt;!---c--&gt;"><code> b12(ase(bco(acp(bi(acp(bcp(acp(bpl(aqu(bqu(A))))))))))))))))))))))))))))))</code></pre>
<pre><code> b12(ase(bco(acp(bi(acp(bcp(acp(bpl(aqu(bqu(A))))))))))))))))))))))))))))))</code></pre>
<p>sometimes has to be changed to:</p>
<pre class="&lt;!---c--&gt;"><code> b12(ase(bco(acp(bi(acp(bcp(acp(bpl(&#39;A&#39;))))))))))))))))))))))))))))</code></pre>
<pre><code> b12(ase(bco(acp(bi(acp(bcp(acp(bpl(&#39;A&#39;))))))))))))))))))))))))))))</code></pre>
<p>particularly if the C preprocessor botches single quotes in cpp expansions,
which we have done for the wider audience.</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
@@ -167,7 +168,7 @@ source. The <code>axx()</code> <code>#define</code>s do the same, but add tokens
<p>As for the rot13 algorithm, it relies on <code>index(3)</code> to find if the
character is in the set <code>A-Za-z</code>. <code>l[]</code> is an array that gets filled
with:</p>
<pre class="&lt;!---c--&gt;"><code> &quot;nopqrstuvwxyzzzzabcdefghijklmmmmNOPQRSTUVWXYZZZZABCDEFGHIJKLMMMM&quot;</code></pre>
<pre><code> &quot;nopqrstuvwxyzzzzabcdefghijklmmmmNOPQRSTUVWXYZZZZABCDEFGHIJKLMMMM&quot;</code></pre>
<p>If <code>index(3)</code> says the char is in the alphabet, then XOR the offset
with <code>16</code> to translate, and output, otherwise pass it unchanged.</p>
<!--
@@ -197,10 +198,10 @@ with <code>16</code> to translate, and output, otherwise pass it unchanged.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dg/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dg/dg.orig.c">dg.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dg/try.sh">try.sh</a> - how to run</li>
<li><a href="1990_dg.tar.bz2">1990_dg.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_dg.tar.bz2">1990_dg.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dg/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/dg/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1
View File
@@ -86,6 +86,7 @@
<div class="sidenav">
<a href="../news.html">IOCCC News</a>
<a href="../status.html">Contest status</a>
<a href="../next/index.html">Rules and Guidelines</a>
<a href="../faq.html#submit">How to enter the IOCCC</a>
<a href="../faq.html">FAQ</a>
</div>
+1 -1
View File
@@ -61,7 +61,7 @@
},
{
"file_path" : "1990_jaw.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+8 -7
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -147,14 +148,14 @@ Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em></l
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<h2 id="try">Try:</h2>
<p>To test the official C entry, one might try:</p>
<pre class="&lt;!---sh--&gt;"><code> echo &quot;Quartz glyph jocks vend, fix, BMW.&quot; | compress | ./btoa | ./jaw</code></pre>
<pre><code> echo &quot;Quartz glyph jocks vend, fix, BMW.&quot; | compress | ./btoa | ./jaw</code></pre>
<p>which should apply the identity transformation to a minimal holoalphabetic
sentence.</p>
<h4 id="also-try">Also try:</h4>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The program, in its base form, implements two useful utilities:</p>
<ul>
@@ -165,10 +166,10 @@ sentence.</p>
it to 1530 bytes) which implements the complete shark utility. The script,
<a href="shark.sh">shark.sh</a>, contains a <code>jaw.c</code> embedded within it!</p>
<p>The sender must have <code>compress</code> and <code>btoa</code>. To send, try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./shark.sh jaw.* README.md &gt; receive</code></pre>
<pre><code> ./shark.sh jaw.* README.md &gt; receive</code></pre>
<p>The resulting file, <code>receive</code>, unpacks the input files
even if the receiver lacks <code>uncompress</code> and <code>btoa</code>:</p>
<pre class="&lt;!---sh--&gt;"><code> mkdir -p test
<pre><code> mkdir -p test
cd test
sh ../receive
cmp ../jaw.c jaw.c
@@ -262,7 +263,7 @@ left, and source-to-source transformations galore.</p></li>
<p>Construct <code>sharkmail</code>, to auto-split <code>sharkives</code> into mailable segments and mail
them. Here’s a simple one, which could be extended to enable auto-reassembly
with one shell cmd at the far end.</p>
<pre class="&lt;!---sh--&gt;"><code> #!/bin/sh
<pre><code> #!/bin/sh
m=$1; shift
shark $* | split -800 - /tmp/shark$$
n=`ls /tmp/shark$$* | wc -l | sed &#39;s/ *//&#39;`
@@ -329,10 +330,10 @@ Dan Bernstein’s high-compression ‘squeeze’.</p></li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/jaw/try.sh">try.sh</a> - how to run</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/jaw/btoa">btoa</a> - bota utility</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/jaw/shark.sh">shark.sh</a> - shark utility with embedded source</li>
<li><a href="1990_jaw.tar.bz2">1990_jaw.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_jaw.tar.bz2">1990_jaw.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/jaw/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/jaw/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "1990_pjr.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+8 -7
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,24 +142,24 @@ Location: <a href="../../location.html#GB">GB</a> - <em>United Kingdom of Great
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<p>There is an <a href="#alternate-code">alternate version</a> that does something different
that can be used if your compiler is incapable of compiling <code>X=g()...</code> in
<code>main()</code>. It can be used for another purpose too.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./pjr</code></pre>
<pre><code> ./pjr</code></pre>
<h2 id="alternate-code">Alternate code:</h2>
<p>Note that some compilers will be unable to compile the expression <code>X=g()...</code> in
<code>main()</code> due to lack of temporary stack space. One might want to try replacing
<code>main()</code> with:</p>
<pre class="&lt;!---c--&gt;"><code> main(){X=s().v().o().o().l().S().d().l().i().o().w().N();}</code></pre>
<pre><code> main(){X=s().v().o().o().l().S().d().l().i().o().w().N();}</code></pre>
<p>if this is a problem, which is what this alternate code is.</p>
<p>NOTE: it prints something else and it is what the author suggested one try as
well.</p>
<h3 id="alternate-build">Alternate build:</h3>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<h3 id="alternate-use">Alternate use:</h3>
<pre class="&lt;!---sh--&gt;"><code> ./pjr.alt</code></pre>
<pre><code> ./pjr.alt</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>This program prints out a string. Can you figure out how
it is done?</p>
@@ -175,7 +176,7 @@ alphabetical character from a to z is printed out as its
opposite:</p>
<pre><code> a-&gt;z b-&gt;y c-&gt;x etc</code></pre>
<p>To encode a new string input the string as it is meant to come out:</p>
<pre class="&lt;!---c--&gt;"><code> X=s().v().o().o().l().S().d().l().i().o().w().N();</code></pre>
<pre><code> X=s().v().o().o().l().S().d().l().i().o().w().N();</code></pre>
<p>Note: <code>S()</code> represents a space and <code>N()</code> a newline. This will now
produce…</p>
<pre><code> hello world</code></pre>
@@ -209,10 +210,10 @@ to the reader to find out what it is.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/pjr/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/pjr/pjr.alt.c">pjr.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/pjr/pjr.orig.c">pjr.orig.c</a> - original source</li>
<li><a href="1990_pjr.tar.bz2">1990_pjr.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_pjr.tar.bz2">1990_pjr.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/pjr/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/pjr/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "1990_scjones.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+5 -4
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,11 +142,11 @@ Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em></l
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./scjones</code></pre>
<pre><code> ./scjones</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The addition of trigraphs has made it easier to make programs hard to read. It
was a dark and stormy night for C when the ANSI C committee added trigraphs to
@@ -199,10 +200,10 @@ would allow for sequence numbers to be punched in columns 73-80 :-).</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/scjones/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/scjones/scjones.orig.c">scjones.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/scjones/try.sh">try.sh</a> - how to run</li>
<li><a href="1990_scjones.tar.bz2">1990_scjones.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_scjones.tar.bz2">1990_scjones.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/scjones/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/scjones/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "1990_stig.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+5 -4
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,11 +142,11 @@ Location: <a href="../../location.html#NO">NO</a> - <em>Kingdom of Norway</em> (
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<p>NOTE: that’s not a typo or mistake but one can also do:</p>
<pre class="&lt;!---sh--&gt;"><code> ./o</code></pre>
<pre><code> ./o</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>We changed the alias that the author’s suggested alias from a
C-shell alias to a Bourne-like shell alias.</p>
@@ -192,10 +193,10 @@ K&amp;R support nested comments when properly implemented, but what the heck.</p
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/stig/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/stig/stig.orig.c">stig.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/stig/stig.sh">stig.sh</a> - how to compile</li>
<li><a href="1990_stig.tar.bz2">1990_stig.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_stig.tar.bz2">1990_stig.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/stig/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/stig/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -44,7 +44,7 @@
},
{
"file_path" : "1990_tbr.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+11 -10
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -144,7 +145,7 @@ Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em></l
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<p>The authors provided another version of this program. See the <a href="#alternate-code">alternate
version</a> section below.</p>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
@@ -155,7 +156,7 @@ version</a> section below.</p>
<p>In 2023 it was noticed that in some systems like macOS there was confusing
output due to a warning at runtime that was interspersed with the output of the
program. For instance it would show:</p>
<pre class="&lt;!---sh--&gt;"><code> ./tbr
<pre><code> ./tbr
$ warning: this program uses gets(), which is unsafe.</code></pre>
<p>which kind of hid the prompt. Thus the entry was changed to use <code>fgets(3)</code> which
is referred to later in this file.</p>
@@ -163,14 +164,14 @@ is referred to later in this file.</p>
this entry would not compile in modern systems. This fix is also referred to
below, in the <a href="#alternate-code">alternate version</a> section.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./tbr
<pre><code> ./tbr
$ enter some shell commands</code></pre>
<p>NOTE: globs do not work with this entry. Why?</p>
<p>NOTE: <code>exit</code> does not work and neither does <code>logout</code>. To exit try sending ctrl-d
or ctrl-c (or kill it from another terminal :-) ). But why does it not work with
just <code>exit</code> or <code>logout</code>? Hint: see the authors’ remarks.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./tbr
<pre><code> ./tbr
$ ls -l tbr tbr.c
# notice how the following does not work:
@@ -187,7 +188,7 @@ documented, are not considered bugs as such in the context of the contest.</p>
<h2 id="alternate-code">Alternate code:</h2>
<p>The authors supplied us with a slightly smaller unformatted version
of the program which we include below:</p>
<pre class="&lt;!---c--&gt;"><code> #define D ,close(
<pre><code> #define D ,close(
char*c,q[512],m[256],*v[99],**u,*i[3];int f[2],p;main(){for(m[m[60]=m[62]=
32]=m[*m=124[m]=9]=6;e(-8),gets(1+(c=q))||(exit(0),0);r(0,0))for(;*++c;);}
r(t,o){*i=i[2]=0;for(u=v+98;m[*--c]^9;m[*c]&amp;32?i[*c&amp;2]=
@@ -201,9 +202,9 @@ of the program which we include below:</p>
as well as the <code>gets()</code> to <code>fgets()</code> fix applied to it to make it functionally
equivalent like the authors intended.</p>
<h3 id="alternate-build">Alternate build:</h3>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<h3 id="alternate-use">Alternate use:</h3>
<pre class="&lt;!---sh--&gt;"><code> ./tbr.alt</code></pre>
<pre><code> ./tbr.alt</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>This program touches on a well known Unix utility, the 6th edition Bourne Shell
(<code>/bin/sh</code>), whose original source was considered to be extremely obfuscated by
@@ -245,9 +246,9 @@ is parsed; a pointer to the stack of arguments is assigned and an
argument is stolen every time a <code>&gt;</code> or <code>&lt;</code> is encountered. The
shell flags an error if no arguments are on the stack. Thus, for
example:</p>
<pre class="&lt;!---sh--&gt;"><code> cat &gt; foo &gt; bar</code></pre>
<pre><code> cat &gt; foo &gt; bar</code></pre>
<p>cats to <code>foo</code>, since it was pushed last, but</p>
<pre class="&lt;!---sh--&gt;"><code> cat &gt; &gt; foo bar</code></pre>
<pre><code> cat &gt; &gt; foo bar</code></pre>
<p>cats to <code>bar</code>, since <code>bar</code> was pushed under <code>foo</code> (remember we’re
parsing right-left).</p>
<p>Depending on your flavor of Unix, <code>cd</code> without an argument will
@@ -281,10 +282,10 @@ all <code>ed(1)</code> does too.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/tbr/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/tbr/tbr.alt.c">tbr.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/tbr/tbr.orig.c">tbr.orig.c</a> - original source</li>
<li><a href="1990_tbr.tar.bz2">1990_tbr.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_tbr.tar.bz2">1990_tbr.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/tbr/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/tbr/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "1990_theorem.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+10 -9
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,13 +142,13 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<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#1990_theorem">1990 theorem bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./theorem expression x1 x2 h y1</code></pre>
<pre><code> ./theorem expression x1 x2 h y1</code></pre>
<p>where:</p>
<pre><code> expression - function f(x,y) (see below)
x1 - start of interval
@@ -155,7 +156,7 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
h - step size
y1 - initial value (y(x1) == y1)</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The program’s source implements four functions, all from the
same source file!</p>
@@ -169,23 +170,23 @@ operators:</p>
integer powers. Also note that all expressions are evaluated strictly
left to right. (i.e., parenthesis aren’t supported).</p>
<p>Try running the program with the following args:</p>
<pre class="&lt;!---sh--&gt;"><code> ./theorem y 0 1 0.1 1
<pre><code> ./theorem y 0 1 0.1 1
./theorem 1/x 1 2 0.1 0
./theorem &#39;x^2/y+x&#39; 0 1 0.1 6</code></pre>
<p>But wait, there is more! You also get, free of charge, a
reversing filter! Try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./theorem -r 0 0 0 0 &lt; theorem.c &gt; sorter.c</code></pre>
<pre><code> ./theorem -r 0 0 0 0 &lt; theorem.c &gt; sorter.c</code></pre>
<p>Still not impressed? The author throws in for free, a
sort program! Try:</p>
<pre class="&lt;!---sh--&gt;"><code> make sorter
<pre><code> make sorter
ls | ./sorter</code></pre>
<p>This program is safe for home use as well. The author has
included a safety feature in case you misplace the original
program source:</p>
<pre class="&lt;!---sh--&gt;"><code> ./sorter -r 0 0 0 0 &lt; sorter.c &gt; theorem_bkp.c</code></pre>
<pre><code> ./sorter -r 0 0 0 0 &lt; sorter.c &gt; theorem_bkp.c</code></pre>
<p>And finally, as a special offer to users of this entry,
the author provides a Fibonacci sequence generator! Try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./sorter 0 0 0 0 &lt; theorem.c &gt; fibonacci.c
<pre><code> ./sorter 0 0 0 0 &lt; theorem.c &gt; fibonacci.c
make fibonacci
./fibonacci 1 1
./fibonacci 2 1</code></pre>
@@ -233,10 +234,10 @@ lines, each less than 99 characters long.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/theorem/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/theorem/theorem.orig.c">theorem.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/theorem/try.sh">try.sh</a> - how to run</li>
<li><a href="1990_theorem.tar.bz2">1990_theorem.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_theorem.tar.bz2">1990_theorem.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/theorem/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/theorem/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -51,7 +51,7 @@
},
{
"file_path" : "1990_westley.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+7 -6
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,19 +142,19 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- 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>
<pre class="&lt;!---sh--&gt;"><code> make all</code></pre>
<pre><code> make all</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./westley &lt;number&gt;</code></pre>
<pre><code> ./westley &lt;number&gt;</code></pre>
<p>The number should be greater than 0.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="alternate-code">Alternate code:</h2>
<p>The alternate code is provided to show how C changed.</p>
<h3 id="alternate-build">Alternate build:</h3>
<p>If you have an old enough compiler try and to see how C has changed over the years:</p>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<h3 id="alternate-use">Alternate use:</h3>
<pre class="&lt;!---sh--&gt;"><code> ./westley.alt &lt;number&gt;</code></pre>
<pre><code> ./westley.alt &lt;number&gt;</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>If you would rather “Daisy” someone other than Westley, rename
the program as needed. :-)</p>
@@ -206,10 +207,10 @@ on some systems. My personal favorite lint complaint is</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/westley/westley.alt.c">westley.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/westley/westley.orig.c">westley.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/westley/try.sh">try.sh</a> - how to run</li>
<li><a href="1990_westley.tar.bz2">1990_westley.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="1990_westley.tar.bz2">1990_westley.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/westley/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1990/westley/.entry.json">.entry.json</a> - description of entry in JSON</li>