Improve thanks-for-fixes up through 1992
For each YYYY header it is a link to the respective index.html page. For each entry the index.html file for the entry is in the section name of the entry (it used to not be a link there but rather in another line with the source code on the same line). The source code is in a subsection (that is the index.html is '#' and source code is '##') below the index.html link. (The rest of the years might happen later today or it might not happen until another day due to a timing conflict here.)
This commit is contained in:
1 parent
3f1158204a
commit
463d126a9f
3 files changed
+358
-188
No files matched your search
@@ -381,8 +381,25 @@ gen_top_html: ${GEN_TOP_HTML}
|
||||
${GEN_TOP_HTML} -v 1
|
||||
@echo '=-=-=-=-= IOCCC complete make $@ =-=-=-=-='
|
||||
|
||||
# a fishy rule :-)
|
||||
# Say, can you see
|
||||
# By the dawn's early light
|
||||
# What so proudly we hailed
|
||||
# At the twilight's last gleaming?
|
||||
#
|
||||
# Whose broad stripes and bright stars
|
||||
# Through the perilous fight
|
||||
# O'er the ramparts we watched
|
||||
# Were so gallantly, yeah, streaming?
|
||||
#
|
||||
# And the rockets' red glare
|
||||
# The bombs bursting in air
|
||||
# Gave proof through the night
|
||||
# That our flag was still there
|
||||
#
|
||||
# O say, does that star-spangled banner yet wave
|
||||
# O'er the land of the free and the home of the brave
|
||||
#
|
||||
# Just kidding .. So Long, and Thanks for All the Fish :-)
|
||||
thanks: ${GEN_TOP_HTML} thanks-for-help.md
|
||||
@echo "Thanks for all the help ..."
|
||||
@${GEN_TOP_HTML}
|
||||
|
||||
+180
-101
@@ -156,10 +156,11 @@ on a IOCCC entry by entry basis.</p>
|
||||
<li><a href="#neglect">Did we neglect to credit you?</a></li>
|
||||
</ul>
|
||||
<div id="1984">
|
||||
<h1 id="section">1984</h1>
|
||||
<h1 id="section"><a href="1984/index.html">1984</a></h1>
|
||||
</div>
|
||||
<div id="1984_anonymous">
|
||||
<h2 id="anonymous-index.html"><a href="1984/anonymous/anonymous.c">1984/anonymous</a> (<a href="1984/anonymous/index.html">index.html</a>)</h2>
|
||||
<h1 id="anonymous"><a href="1984/anonymous/index.html">1984/anonymous</a></h1>
|
||||
<h2 id="source-code-anonymous.c">Source code: <a href="1984/anonymous/anonymous.c">anonymous.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to work for macOS.</p>
|
||||
<p>The problem was to do with the way that the <code>read(2)</code> function was redefined.
|
||||
@@ -178,7 +179,8 @@ the famous tattoo which we also include here:</p>
|
||||
<p>…which was done in 2005 by <a href="https://web.archive.org/web/20070120220721/https://thomasscovell.com/tattoo.php">Thomas
|
||||
Scovell</a>.</p>
|
||||
<div id="1984_decot">
|
||||
<h2 id="decot-index.html"><a href="1984/decot/decot.c">1984/decot</a> (<a href="1984/decot/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="decot"><a href="1984/decot/index.html">1984/decot</a></h1>
|
||||
<h2 id="source-code-decot.c">Source code: <a href="1984/decot/decot.c">decot.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to not require <code>-traditional-cpp</code> which some compilers like
|
||||
clang do not support. Fixing <code>-traditional-cpp</code> is, as noted later on, very
|
||||
@@ -227,7 +229,8 @@ but not clang - or at least some versions.</p>
|
||||
<p>To see the difference from start to fixed:</p>
|
||||
<pre><code> cd 1984/decot ; make diff_orig_prog</code></pre>
|
||||
<div id="1984_laman">
|
||||
<h2 id="laman-index.html"><a href="1984/laman/laman.c">1984/laman</a> (<a href="1984/laman/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="laman"><a href="1984/laman/index.html">1984/laman</a></h1>
|
||||
<h2 id="source-code-laman.c">Source code: <a href="1984/laman/laman.c">laman.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1984/laman/try.sh">try.sh</a> script.</p>
|
||||
<p>Cody also fixed this to not crash when no arg is specified. Note that if the arg
|
||||
@@ -235,7 +238,8 @@ is not a positive number it will not do anything useful or anything at all.
|
||||
This was fixed on 30 October 2023 after the bug status was changed from INABIAF
|
||||
(it’s not a bug it’s a feature) to bug.</p>
|
||||
<div id="1984_mullender">
|
||||
<h2 id="mullender-index.html"><a href="1984/mullender/mullender.c">1984/mullender</a> (<a href="1984/mullender/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="mullender"><a href="1984/mullender/index.html">1984/mullender</a></h1>
|
||||
<h2 id="source-code-mullender.c">Source code: <a href="1984/mullender/mullender.c">mullender.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> provided an <a href="1984/mullender/mullender.alt.c">alternate version</a>,
|
||||
an improved version of the judges, so that everyone can enjoy it with systems
|
||||
@@ -255,10 +259,11 @@ copy of it as to what it should have been at the time, in the fabulous <a href="
|
||||
History
|
||||
Repo</a>.</p>
|
||||
<div id="1985">
|
||||
<h1 id="section-1">1985</h1>
|
||||
<h1 id="section-1"><a href="1985/index.html">1985</a></h1>
|
||||
</div>
|
||||
<div id="1985_applin">
|
||||
<h2 id="applin-index.html"><a href="1985/applin/applin.c">1985/applin</a> (<a href="1985/applin/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="applin"><a href="1985/applin/index.html">1984/applin</a></h1>
|
||||
<h2 id="source-code-applin.c">Source code: <a href="1985/applin/applin.c">applin.c</a></h2>
|
||||
</div>
|
||||
<p>Both <a href="#cody">Cody</a> and <a href="#yusuke">Yusuke</a> fixed this; Yusuke got this to not crash and Cody fixed it
|
||||
to work with macOS.</p>
|
||||
@@ -277,7 +282,8 @@ shell, after the output (despite having <code>\n</code> in the string - can you
|
||||
why?) but to make it more friendly to users Cody made it print a <code>\n</code> prior to
|
||||
returning to the shell. The original code does not have this change.</p>
|
||||
<div id="1985_august">
|
||||
<h2 id="august-index.html"><a href="1985/august/august.c">1985/august</a> (<a href="1985/august/index.html">index.html</a>)</h2>
|
||||
<h1 id="august"><a href="1985/august/index.html">1985/august</a></h1>
|
||||
<h2 id="source-code-august.c">Source code: <a href="1985/august/august.c">august.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a>, out of abundance of caution, added a second arg to <code>main()</code> because some
|
||||
versions of clang object to the number of args of <code>main()</code>, saying that it must
|
||||
@@ -293,7 +299,8 @@ way.</p>
|
||||
whether <code>primes(6)</code> is installed or not, but it only does it once with the
|
||||
default value).</p>
|
||||
<div id="1985_lycklama">
|
||||
<h2 id="lycklama-index.html"><a href="1985/lycklama/lycklama.c">1985/lycklama</a> (<a href="1985/lycklama/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="lycklama"><a href="1985/lycklama/index.html">1985/lycklama</a></h1>
|
||||
<h2 id="source-code-lycklama.c">Source code: <a href="1985/lycklama/lycklama.c">lycklama.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to compile with modern compilers. In the past one could get away
|
||||
with defining some macro to <code>#define</code> and then use <code>#foo</code> to have the same
|
||||
@@ -303,7 +310,8 @@ changed the <code>#o</code> lines to <code>#define</code>. Also <code>unistd.h</
|
||||
that Cody added. See the index.html for details.</p>
|
||||
<p>Cody also provided the <a href="1985/lycklama/try.alt.sh">try.alt.sh</a> script.</p>
|
||||
<div id="1985_shapiro">
|
||||
<h2 id="shapiro-index.html"><a href="1985/shapiro/shapiro.c">1985/shapiro</a> (<a href="1985/shapiro/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="shapiro"><a href="1985/1985/lycklama/index.html">1985/shapiro</a></h1>
|
||||
<h2 id="source-code-index.html">Source code: <a href="1985/shapiro/shapiro.c%5D">index.html</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the alt code which allows one to resize the maze and he also added
|
||||
the <a href="1985/shapiro/try.alt.sh">try.alt.sh</a> script that randomly selects sizes
|
||||
@@ -312,7 +320,8 @@ enter a number, in an infinite loop, exiting if any non-digits are in input
|
||||
(this includes negative numbers which in the code actually sets it back to 39,
|
||||
the default).</p>
|
||||
<div id="1985_sicherman">
|
||||
<h2 id="sicherman-index.html"><a href="1985/sicherman/sicherman.c">1985/sicherman</a> (<a href="1985/sicherman/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="sicherman"><a href="1985/sicherman/index.html">1985/sicherman</a></h1>
|
||||
<h2 id="source-code-1985sicherman">Source code: <a href="1985/sicherman/sicherman.c">1985/sicherman</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this <em>very twisted entry</em> to not require <code>-traditional-cpp</code>. Fixing
|
||||
<code>-traditional-cpp</code> is, as noted later on, very complicated, but Cody would like
|
||||
@@ -400,24 +409,28 @@ rule).</p>
|
||||
<p>Cody also added the <a href="1985/sicherman/try.sh">try.sh</a> and
|
||||
<a href="1985/sicherman/try.alt.sh">try.alt.sh</a> scripts.</p>
|
||||
<div id="1986">
|
||||
<h1 id="section-2">1986</h1>
|
||||
<h1 id="section-2"><a href="1986/index.html">1986</a></h1>
|
||||
</div>
|
||||
<div id="1986_applin">
|
||||
<h2 id="applin-index.html-1"><a href="1986/applin/applin.c">1986/applin</a> (<a href="1986/applin/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="applin-1"><a href="1986/applin/index.html%5D">1986/applin</a></h1>
|
||||
<h2 id="source-code-applin.c-1">Source code: <a href="1986/applin/applin.c">applin.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made the C file executable so one does not have to do <code>sh ./applin.c</code> or <code>./applin</code>; they can do either <code>./applin.c</code> or <code>./applin</code>.</p>
|
||||
<div id="1986_bright">
|
||||
<h2 id="bright-index.html"><a href="1986/bright/bright.c">1986/bright</a> (<a href="1986/bright/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="bright"><a href="1986/bright/index.html">1986/bright</a></h1>
|
||||
<h2 id="source-code-bright.c">Source code: <a href="1986/bright/bright.c">bright.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1986/bright/try.sh">try.sh</a> script.</p>
|
||||
<div id="1986_hague">
|
||||
<h2 id="hague-index.html"><a href="1986/hague/hague.c">1986/hague</a> (<a href="1986/hague/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="hague"><a href="1986/hague/index.html%5D">1986/hague</a></h1>
|
||||
<h2 id="source-code-hague.c">Source code: <a href="1986/hague/hague.c">hague.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made this use <code>fgets()</code>.</p>
|
||||
<p>Cody also added the <a href="1986/hague/try.sh">try.sh</a> script which also feeds to the
|
||||
program the added <code>input.txt</code> file.</p>
|
||||
<div id="1986_holloway">
|
||||
<h2 id="holloway-index.html"><a href="1986/holloway/holloway.c">1986/holloway</a> (<a href="1986/holloway/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="holloway"><a href="1986/holloway/index.html">1986/holloway</a></h1>
|
||||
<h2 id="source-code-holloway.c">Source code: <a href="1986/holloway/holloway.c">holloway.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to compile and work with clang (it already worked with gcc).
|
||||
The problem was that clang is more strict about the type of second arg to
|
||||
@@ -426,7 +439,8 @@ caused a segfault. By adding a new variable, <code>char *t</code>, initialising
|
||||
and then using <code>t</code> instead of <code>s</code> it compiles and runs successfully under clang
|
||||
and gcc.</p>
|
||||
<div id="1986_marshall">
|
||||
<h2 id="marshall-index.html"><a href="1986/marshall/marshall.c">1986/marshall</a> (<a href="1986/marshall/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="marshall"><a href="1986/marshall/index.html">1986/marshall</a></h1>
|
||||
<h2 id="source-code-marshall.c">Source code: <a href="1986/marshall/marshall.c">marshall.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> got this to compile and work with clang and gcc. He noted that he tried to
|
||||
keep the ASCII art as close to the original as possible. The line lengths are
|
||||
@@ -465,13 +479,15 @@ was possible to silence it. In particular:</p>
|
||||
<p>which can be disabled. It results in the same behaviour but this way no warnings
|
||||
are produced.</p>
|
||||
<div id="1986_pawka">
|
||||
<h2 id="pawka-index.html"><a href="1986/pawka/pawka.c">1986/pawka</a> (<a href="1986/pawka/index.html">index.html</a>)</h2>
|
||||
<h1 id="pawka"><a href="1986/pawka/index.html">1986/pawka</a></h1>
|
||||
<h2 id="source-code-pawka.c">Source code: <a href="1986/pawka/pawka.c">pawka.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> noticed and fixed a funny mistake in the Makefile where a
|
||||
<code>-Wno-strict-prototypes</code> was in the wrong location, suggesting that there is a
|
||||
<code>-D</code> needed to compile the entry.</p>
|
||||
<div id="1986_stein">
|
||||
<h2 id="stein-index.html"><a href="1986/stein/stein.c">1986/stein</a> (<a href="1986/stein/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="stein"><a href="1986/stein/index.html">1986/stein</a></h1>
|
||||
<h2 id="source-code-stein.c">Source code: <a href="1986/stein/stein.c">stein.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> restored the original entry which was a single line. The code
|
||||
being longer (in 1986 a one liner could be longer) was split to three lines to
|
||||
@@ -480,7 +496,8 @@ one line.</p>
|
||||
<p>Cody also added the <a href="1986/stein/stein.sh">stein.sh</a> script which runs the two
|
||||
commands that we suggest in order to get it to show clean output.</p>
|
||||
<div id="1986_wall">
|
||||
<h2 id="wall-index.html"><a href="1986/wall/wall.c">1986/wall</a> (<a href="1986/wall/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="wall"><a href="1986/wall/index.html">1986/wall</a></h1>
|
||||
<h2 id="source-code-wall.c">Source code: <a href="1986/wall/wall.c">wall.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this so that it does not require <code>-traditional-cpp</code>. This took a fair
|
||||
bit of tinkering as this entry <em>very twisted</em>; fixing <code>-traditional-cpp</code> is, as
|
||||
@@ -544,14 +561,16 @@ work with gcc but it still required <code>-traditional-cpp</code>.</p>
|
||||
</ul>
|
||||
<p>There might have been other changes as well.</p>
|
||||
<div id="1987">
|
||||
<h1 id="section-3">1987</h1>
|
||||
<h1 id="section-3"><a href="1987/index.html">1987</a></h1>
|
||||
</div>
|
||||
<div id="1987_biggar">
|
||||
<h2 id="biggar-index.html"><a href="1987/biggar/biggar.c">1987/biggar</a> (<a href="1987/biggar/index.html">index.html</a>)</h2>
|
||||
<h1 id="biggar"><a href="1987/biggar/index.html">1987/biggar</a></h1>
|
||||
<h2 id="source-code-biggar.c">Source code: <a href="1987/biggar/biggar.c">biggar.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1987/biggar/try.sh">try.sh</a> script.</p>
|
||||
<div id="1987_heckbert">
|
||||
<h2 id="heckbert-index.html"><a href="1987/heckbert/heckbert.c">1987/heckbert</a> (<a href="1987/heckbert/index.html">index.html</a>)</h2>
|
||||
<h1 id="heckbert"><a href="1987/heckbert/index.html">1987/heckbert</a></h1>
|
||||
<h2 id="source-code-heckbert.c">Source code: <a href="1987/heckbert/heckbert.c">heckbert.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made this look more like the original entry by restoring the <code>#define</code> of
|
||||
<code>define</code>. It’s not used but it now looks closer to the original.</p>
|
||||
@@ -562,14 +581,16 @@ of <code>strings.h</code> and because it’s identical in use to <code>strchr(3)
|
||||
that for System V we had to do this) Cody added to the Makefile
|
||||
<code>-Dindex=strchr</code>.</p>
|
||||
<div id="1987_hines">
|
||||
<h2 id="hines-index.html"><a href="1987/hines/hines.c">1987/hines</a> (<a href="1987/hines/index.html">index.html</a>)</h2>
|
||||
<h1 id="hines"><a href="1987/hines/index.html">1987/hines</a></h1>
|
||||
<h2 id="source-code-hines.c">Source code: <a href="1987/hines/hines.c">hines.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1987/hines/try.sh">try.sh</a> script and the C file
|
||||
<a href="1987/hines/goto.c">goto.c</a> and the text file <a href="1987/hines/goto.txt">goto.txt</a>
|
||||
for demonstration purposes. Notice that the program is case sensitive which
|
||||
running the program on the text file demonstrates.</p>
|
||||
<div id="1987_lievaart">
|
||||
<h2 id="lievaart-index.html"><a href="1987/lievaart/lievaart.c">1987/lievaart</a> (<a href="1987/lievaart/index.html">index.html</a>)</h2>
|
||||
<h1 id="lievaart"><a href="1987/lievaart/index.html">1987/lievaart</a></h1>
|
||||
<h2 id="source-code-lievaart.c">Source code: <a href="1987/lievaart/lievaart.c">lievaart.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added back the documented checks for invalid input which no longer worked
|
||||
and instead resulted in either accepting the level, whether or not it was a
|
||||
@@ -606,12 +627,14 @@ immediately goes back to the prompting of the level.</p>
|
||||
well (the one with the board and the one without, the entry itself with the
|
||||
size constraints of the contest).</p>
|
||||
<div id="1987_wall">
|
||||
<h2 id="wall-index.html-1"><a href="1987/wall/wall.c">1987/wall</a> (<a href="1987/wall/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="wall-1"><a href="1987/wall/index.html">1987/wall</a></h1>
|
||||
<h2 id="source-code-wall.c-1">Source code: <a href="1987/wall/wall.c">wall.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made this use <code>fgets(3)</code>.</p>
|
||||
<p>Cody also added the <a href="1987/wall/try.sh">try.sh</a> script.</p>
|
||||
<div id="1987_westley">
|
||||
<h2 id="westley-index.html"><a href="1987/westley/westley.c">1987/westley</a> (<a href="1987/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="westley"><a href="1987/westley/index.html">1987/westley</a></h1>
|
||||
<h2 id="source-code-westley.c">Source code: <a href="1987/westley/westley.c">westley.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this for modern systems. The problem was <code>'assignment to cast is illegal, lvalue casts are not supported'</code>. For the original file see the
|
||||
index.html file. Unfortunately this ruins some symmetry. To try and resolve this
|
||||
@@ -623,10 +646,11 @@ look more symmetrical now.</p>
|
||||
<p>Cody also added to the Makefile <code>-include stdio.h</code> in the nowadays very
|
||||
unlikely(?) but nevertheless suggested case that <code>putchar()</code> is not available.</p>
|
||||
<div id="1988">
|
||||
<h1 id="section-4">1988</h1>
|
||||
<h1 id="section-4"><a href="1988/index.html">1988</a></h1>
|
||||
</div>
|
||||
<div id="1988_dale">
|
||||
<h2 id="dale-index.html"><a href="1988/dale/dale.c">1988/dale</a> (<a href="1988/dale/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="dale"><a href="1988/dale/index.html">1988/dale</a></h1>
|
||||
<h2 id="source-code-dale.c">Source code: <a href="1988/dale/dale.c">dale.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this twisted entry (as we called it :-) ) for modern compilers,
|
||||
including making it no longer require <code>-traditional-cpp</code>. Fixing
|
||||
@@ -681,19 +705,22 @@ macro in place it’s just no longer used.</p>
|
||||
version in case you have an older compiler or wish to try <code>-traditional-cpp</code>.</p>
|
||||
<p>Cody also provided the <a href="1988/dale/try.sh">try.sh</a> script.</p>
|
||||
<div id="1988_isaak">
|
||||
<h2 id="isaak-index.html"><a href="1988/isaak/isaak.c">1988/isaak</a> (<a href="1988/isaak/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="isaak"><a href="1988/isaak/index.html">1988/isaak</a></h1>
|
||||
<h2 id="source-code-isaak.c">Source code: <a href="1988/isaak/isaak.c">isaak.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to work for modern systems. The problem was that the important
|
||||
function, a redefinition of <code>exit()</code>, was not being called in <code>main()</code>. The
|
||||
original version is in <a href="1988/isaak/isaak.alt.c">1988/isaak/isaak.alt.c</a>. See the
|
||||
index.html file for more details.</p>
|
||||
<div id="1988_litmaath">
|
||||
<h2 id="litmaath-index.html"><a href="1988/litmaath/litmaath.c">1988/litmaath</a> (<a href="1988/litmaath/index.html">index.html</a>)</h2>
|
||||
<h1 id="litmaath"><a href="1988/litmaath/index.html">1988/litmaath</a></h1>
|
||||
<h2 id="source-code-litmaath.c">Source code: <a href="1988/litmaath/litmaath.c">litmaath.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the alt code which is code that we suggested at the time of
|
||||
publication, in the remarks, to help understand the entry, and for fun.</p>
|
||||
<div id="1988_phillipps">
|
||||
<h2 id="phillipps-index.html"><a href="1988/phillipps/phillipps.c">1988/phillipps</a> (<a href="1988/phillipps/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="phillipps"><a href="1988/phillipps/index.html">1988/phillipps</a></h1>
|
||||
<h2 id="source-code-phillipps.c">Source code: <a href="1988/phillipps/phillipps.c">phillipps.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this for modern systems. It did not compile with clang because it
|
||||
requires the second and third args of <code>main()</code> to be `char ** but even before
|
||||
@@ -709,11 +736,13 @@ once did. The format of <code>pain()</code> is exactly like how <code>main()</co
|
||||
same code. Additionally, <code>main()</code> returns <code>!pain(...)</code> like <code>main()</code> used to do
|
||||
to itself and <code>pain()</code> does now.</p>
|
||||
<div id="1988_reddy">
|
||||
<h2 id="reddy-index.html"><a href="1988/reddy/reddy.c">1988/reddy</a> (<a href="1988/reddy/index.html">index.html</a>)</h2>
|
||||
<h1 id="reddy"><a href="1988/reddy/index.html">1988/reddy</a></h1>
|
||||
<h2 id="source-code-reddy.c">Source code: <a href="1988/reddy/reddy.c">reddy.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made this use <code>fgets(3)</code>.</p>
|
||||
<div id="1988_spinellis">
|
||||
<h2 id="spinellis-index.html"><a href="1988/spinellis/spinellis.c">1988/spinellis</a> (<a href="1988/spinellis/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="spinellis"><a href="1988/spinellis/index.html">1988/spinellis</a></h1>
|
||||
<h2 id="source-code-spinellis.c">Source code: <a href="1988/spinellis/spinellis.c">spinellis.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> provided an <a href="1988/spinellis/spinellis.alt.c">alternate version</a> so that
|
||||
this will work with compilers like clang. An alternate version had to be
|
||||
@@ -726,7 +755,8 @@ original. See the index.html file for details on the alternate code.</p>
|
||||
doing this) that with a slight modification this entry can be C++ instead. We don’t
|
||||
thank him for this ghastly point! :-)</p>
|
||||
<div id="1988_westley">
|
||||
<h2 id="westley-index.html-1"><a href="1988/westley/westley.c">1988/westley</a> (<a href="1988/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="westley-1"><a href="1988/westley/index.html">1988/westley</a></h1>
|
||||
<h2 id="source-code-westley.c-1">Source code: <a href="1988/westley/westley.c">westley.c</a></h2>
|
||||
</div>
|
||||
<p>The <a href="1988/westley/westley.alt.c">original version</a>, provided as alternate code,
|
||||
was fixed by Misha Dynin, based on the judges’ remarks, so that this would work
|
||||
@@ -737,10 +767,11 @@ entry as seeing the code with the result at once is far more beautiful.</p>
|
||||
<p>Cody also changed the <code>int</code>s to be <code>float</code> as that’s what they are printed as:
|
||||
not strictly necessary but nonetheless more correct, even if not warned against.</p>
|
||||
<div id="1989">
|
||||
<h1 id="section-5">1989</h1>
|
||||
<h1 id="section-5"><a href="1989/index.html">1989</a></h1>
|
||||
</div>
|
||||
<div id="1989_fubar">
|
||||
<h2 id="fubar-index.html"><a href="1989/fubar/fubar.c">1989/fubar</a> (<a href="1989/fubar/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="fubar"><a href="1989/fubar/index.html">1989/fubar</a></h1>
|
||||
<h2 id="source-code-fubar.c">Source code: <a href="1989/fubar/fubar.c">fubar.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> got this to work with modern systems. The main issues were that an
|
||||
<code>#include</code> had to be added along with fixing the path (due to <code>.</code> not being in
|
||||
@@ -767,7 +798,8 @@ might end up failing to work even after changing it back. This was resolved by:<
|
||||
<code>if [ .. ]</code> was changed in the C code as well as the script.</p>
|
||||
<p>Cody also added the <a href="1989/fubar/try.sh">try.sh</a> script.</p>
|
||||
<div id="1989_jar.1">
|
||||
<h2 id="jar.1-index.html"><a href="1989/jar.1/jar.1.c">1989/jar.1</a> (<a href="1989/jar.1/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="jar.1"><a href="1989/jar.1/index.html">1989/jar.1</a></h1>
|
||||
<h2 id="source-code-jar.1.c">Source code: <a href="1989/jar.1/jar.1.c">jar.1.c</a></h2>
|
||||
</div>
|
||||
<p>To prevent annoying output to <code>/dev/tty</code> we changed the code to simulate the
|
||||
output via <code>strings(1)</code> but <a href="#cody">Cody</a> removed the ill-famed <code>useless use of cat</code> to
|
||||
@@ -782,7 +814,8 @@ code directly, to match that of the main entry. As we simulate the functionality
|
||||
anyway, and since one may still run the code or the script (for the original
|
||||
entry and the alt code) anyway, it works out well.</p>
|
||||
<div id="1989_jar.2">
|
||||
<h2 id="jar.2-index.html"><a href="1989/jar.2/jar.2.c">1989/jar.2</a> (<a href="1989/jar.2/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="jar.2"><a href="1989/jar.2/index.html">1989/jar.2</a></h1>
|
||||
<h2 id="source-code-jar.2.c">Source code: <a href="1989/jar.2/jar.2.c">jar.2.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to work with modern compilers. Modern compilers do not allow
|
||||
code like:</p>
|
||||
@@ -809,7 +842,8 @@ result in:</p>
|
||||
shell returned 2</code></pre>
|
||||
<p>because the <code>alt</code> rule had what normally is in the <code>${PROG}.alt</code> rule.</p>
|
||||
<div id="1989_ovdluhe">
|
||||
<h2 id="ovdluhe-index.html"><a href="1989/ovdluhe/ovdluhe.c">1989/ovdluhe</a> (<a href="1989/ovdluhe/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="ovdluhe"><a href="1989/ovdluhe/index.html">1989/ovdluhe</a></h1>
|
||||
<h2 id="source-code-ovdluhe.c">Source code: <a href="1989/ovdluhe/ovdluhe.c">ovdluhe.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed an infinite loop where the program would print the same thing over
|
||||
and over again, flooding the screen. The problem is that there was a <code>for</code> loop
|
||||
@@ -826,7 +860,8 @@ uses the alt code, allowing one to configure the alt build. See the index.html
|
||||
for details. The fix described above was fixed in this version too, after it was
|
||||
discovered and fixed.</p>
|
||||
<div id="1989_paul">
|
||||
<h2 id="paul-index.html"><a href="1989/paul/paul.c">1989/paul</a> (<a href="1989/paul/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="paul"><a href="1989/paul/index.html">1989/paul</a></h1>
|
||||
<h2 id="source-code-paul.c">Source code: <a href="1989/paul/paul.c">paul.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed a segfault under macOS that prevented it from working. The problem
|
||||
was that the int (from <code>#define f</code>) should be a long. This became apparent when
|
||||
@@ -835,7 +870,8 @@ he was using lldb and saw that the type of a pointer was too <code>long</code> :
|
||||
which has the trace function that the author included but commented out. See the
|
||||
index.html for details.</p>
|
||||
<div id="1989_robison">
|
||||
<h2 id="robison-index.html"><a href="1989/robison/robison.c">1989/robison</a> (<a href="1989/robison/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="robison"><a href="1989/robison/index.html">1989/robison</a></h1>
|
||||
<h2 id="source-code-robison.c">Source code: <a href="1989/robison/robison.c">robison.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#yusuke">Yusuke Endoh</a> fixed this to compile under modern systems. To see the changes
|
||||
made, try:</p>
|
||||
@@ -843,7 +879,8 @@ made, try:</p>
|
||||
<p>(It adds the C token pasting operator <code>##</code> instead of <code>/**/</code>.)</p>
|
||||
<p>Cody also added the <a href="1989/robison/try.sh">try.sh</a> script.</p>
|
||||
<div id="1989_tromp">
|
||||
<h2 id="tromp-index.html"><a href="1989/tromp/tromp.c">1989/tromp</a> (<a href="1989/tromp/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="tromp"><a href="1989/tromp/index.html">1989/tromp</a></h1>
|
||||
<h2 id="source-code-tromp.c">Source code: <a href="1989/tromp/tromp.c">tromp.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> and <a href="#yusuke">Yusuke</a> fixed this entry: Yusuke fixed this to compile with gcc and Cody
|
||||
fixed it for clang and made some other fixes as well.</p>
|
||||
@@ -866,11 +903,13 @@ various other things, so that now the alt version, which is better, can be used.
|
||||
IOCCC <a href="https://en.wikipedia.org/wiki/Tetris">Tetris</a> working (this of course was
|
||||
not his only reason :-) )</p>
|
||||
<div id="1989_vanb">
|
||||
<h2 id="vanb-index.html"><a href="1989/vanb/vanb.c">1989/vanb</a> (<a href="1989/vanb/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="vanb"><a href="1989/vanb/index.html">1989/vanb</a></h1>
|
||||
<h2 id="source-code-vanb.c">Source code: <a href="1989/vanb/vanb.c">vanb.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1989/vanb/try.sh">try.sh</a> script.</p>
|
||||
<div id="1989_westley">
|
||||
<h2 id="westley-index.html-2"><a href="1989/westley/westley.c">1989/westley</a> (<a href="1989/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="westley-2"><a href="1989/westley/index.html">1989/westley</a></h1>
|
||||
<h2 id="source-code-westley.c-2">Source code: <a href="1989/westley/westley.c">westley.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this for clang, except that two versions generated by the program
|
||||
cannot be compiled by clang due to inherent defects in the compiler and how the
|
||||
@@ -888,19 +927,25 @@ might just not be possible.</p>
|
||||
<p>The way it was fixed might be hard to see and describe but this is an attempt.
|
||||
Because <code>main()</code>’s args were all <code>int</code>s, <code>main()</code> had to call a new function
|
||||
which is allowed to have args as <code>int</code> (instead of <code>main()</code>’s args being int and
|
||||
the rest being <code>char **) but this is not as straight forward as it is for other entries (if you look at the code you might see what is meant; the function called is</code>pain()`).</p>
|
||||
the rest being <code>char **</code>) but this is not as straight forward as it is for other
|
||||
entries (if you look at the code you might see what is meant; the function called
|
||||
is <code>pain()</code>).</p>
|
||||
<p>The args of <code>main()</code> had to be set to the right type but only three args, <strong>not
|
||||
four</strong>, even though the original program has four args. This is because not all
|
||||
versions of clang support four args and that is one of the issues with version 2
|
||||
and 3 as it generates <code>main()</code> to have four args and the wrong type, all <code>int</code>s.</p>
|
||||
<p>In the call to the new function, <code>pain()</code>, from <code>main()</code>, one of the <code>char **s is used twice, once as</code>argc<code>with bitwise AND with 2, naturally first being cast to an</code>int<code>(</code>(int)ABBA&2<code>), and once as a</code>char **, the fourth arg to
|
||||
<p>In the call to the new function, <code>pain()</code>, from <code>main()</code>, one of the <code>char **</code>s
|
||||
is used twice, once as <code>argc</code> with bitwise AND with 2, naturally first being
|
||||
cast to an <code>int</code> (<code>(int)ABBA&2</code>), and once as a <code>char **</code>, the fourth arg to
|
||||
<code>pain()</code> (yes even though <code>pain()</code> takes all <code>int</code>s).</p>
|
||||
<p>The argc,, meanwhile, <code>tang</code>, is used once and the second arg, <code>char **gnat</code> is
|
||||
<p>The argc, meanwhile, <code>tang</code>, is used once and the second arg, <code>char **gnat</code> is
|
||||
used once (observe how <code>tang</code> is <code>gnat</code> spelt backwards as this is one of the
|
||||
things that makes this a masterpiece and very hard if not impossible to fix
|
||||
completely). Fortunately it is not actually necessary to use all four args (of
|
||||
<code>main()</code>) in the call which might or might not be surprising, especially as it
|
||||
uses one of the args, a <code>char **, instead of an</code>int<code>(through casts), twice rather than just passing in for the fourth arg (the fourth arg passed in is the third arg to</code>main()`).</p>
|
||||
uses one of the args, a <code>char **</code>, instead of an <code>int</code> (through casts), twice
|
||||
rather than just passing in for the fourth arg (the fourth arg passed in is the
|
||||
third arg to <code>main()</code>).</p>
|
||||
<p>This program heavily uses recursion and depending on the number of args it will
|
||||
print out output normally, ROT13 it, show it backwards or both. Along with the
|
||||
ROT13 and reversed output of the code, it is the <strong>comments that create the
|
||||
@@ -923,10 +968,11 @@ will work for compilers like gcc and one can then use the
|
||||
<p>The <code>compile.sh</code> script allows one to specify the compiler with the <code>CC</code>
|
||||
environmental variable; see the index.html for details.</p>
|
||||
<div id="1990">
|
||||
<h1 id="section-6">1990</h1>
|
||||
<h1 id="section-6"><a href="1990/index.html">1990</a></h1>
|
||||
</div>
|
||||
<div id="1990_baruch">
|
||||
<h2 id="baruch-index.html"><a href="1990/baruch/baruch.c">1990/baruch</a> (<a href="1990/baruch/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="baruch"><a href="1990/baruch/index.html">1990/baruch</a></h1>
|
||||
<h2 id="source-code-baruch.c">Source code: <a href="1990/baruch/baruch.c">baruch.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1990/baruch/try.sh">try.sh</a> script.</p>
|
||||
<p>Cody also added an <a href="1990/baruch/baruch.alt.c">alternate version</a> which allows Turbo-C
|
||||
@@ -942,13 +988,15 @@ question (i.e. it was only tested in the original entry). YMMV.</p>
|
||||
the variables, adding instead <code>-Wno-implicit-int</code>. The newline added by the
|
||||
judges was retained.</p>
|
||||
<div id="1990_cmills">
|
||||
<h2 id="cmills-index.html"><a href="1990/cmills/cmills.c">1990/cmills</a> (<a href="1990/cmills/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="cmills"><a href="1990/cmills/index.html">1990/cmills</a></h1>
|
||||
<h2 id="source-code-cmills.c">Source code: <a href="1990/cmills/cmills.c">cmills.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#yusuke">Yusuke</a> got this to work in modern systems (it previously resulted in a bus
|
||||
error).</p>
|
||||
<p><a href="#cody">Cody</a> made this use <code>fgets(3)</code>.</p>
|
||||
<div id="1990_dds">
|
||||
<h2 id="dds-index.html"><a href="1990/dds/dds.c">1990/dds</a> (<a href="1990/dds/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="dds"><a href="1990/dds/index.html">1990/dds</a></h1>
|
||||
<h2 id="source-code-dds.c">Source code: <a href="1990/dds/dds.c">dds.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#yusuke">Yusuke</a> and <a href="#cody">Cody</a> in conjunction fixed this for modern systems (both fixed a
|
||||
different compiler error but more fixes were also made).</p>
|
||||
@@ -960,7 +1008,8 @@ operator itself.</p>
|
||||
<code>fopen()</code>. Cody also changed a <code>char *</code> used for file I/O to be a proper <code>FILE *</code> and fixed a typo in <a href="1990/dds/LANDER.BAS">LANDER.BAS</a>.</p>
|
||||
<p>Cody also made this use <code>fgets(3)</code>.</p>
|
||||
<div id="1990_dg">
|
||||
<h2 id="dg-index.html"><a href="1990/dg/dg.c">1990/dg</a> (<a href="1990/dg/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="dg"><a href="1990/dg/index.html">1990/dg</a></h1>
|
||||
<h2 id="source-code-dg.c">Source code: <a href="1990/dg/dg.c">dg.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this for modern systems. There were two problems to be resolved.</p>
|
||||
<p>One can no longer do:</p>
|
||||
@@ -975,7 +1024,8 @@ but later Cody added it back to make it more like the original).</p>
|
||||
with if the C preprocessor botches single quotes in cpp expansion.</p>
|
||||
<p>Cody also added the <a href="1990/dg/try.sh">try.sh</a> script.</p>
|
||||
<div id="1990_jaw">
|
||||
<h2 id="jaw-index.html"><a href="1990/jaw/jaw.c">1990/jaw</a> (<a href="1990/jaw/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="jaw"><a href="1990/jaw/index.html">1990/jaw</a></h1>
|
||||
<h2 id="source-code-jaw.c">Source code: <a href="1990/jaw/jaw.c">jaw.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed the script to work properly in modern environments including writing
|
||||
to and extracting from <code>stdout</code> and relying on the exit code in the commands to
|
||||
@@ -988,20 +1038,23 @@ the time.</p>
|
||||
fix applied by Cody that made the program just show <code>oops</code> twice from invalid
|
||||
input but which now works.</p>
|
||||
<div id="1990_pjr">
|
||||
<h2 id="pjr-index.html"><a href="1990/pjr/pjr.c">1990/pjr</a> (<a href="1990/pjr/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="pjr"><a href="1990/pjr/index.html">1990/pjr</a></h1>
|
||||
<h2 id="source-code-pjr.c">Source code: <a href="1990/pjr/pjr.c">pjr.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1990/pjr/pjr.alt.c">alt code</a> which was suggested by the judges
|
||||
in the case that your compiler cannot compile <code>X=g()...</code> but it actually does
|
||||
something else and is recommended by the author as well.</p>
|
||||
<div id="1990_scjones">
|
||||
<h2 id="scjones-index.html"><a href="1990/scjones/scjones.c">1990/scjones</a> (<a href="1990/scjones/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="scjones"><a href="1990/scjones/index.html">1990/scjones</a></h1>
|
||||
<h2 id="source-code-scjones.c">Source code: <a href="1990/scjones/scjones.c">scjones.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#yusuke">Yusuke</a> suggested <code>-ansi</code> to get the entry to compile due to trigraphs and <a href="#cody">Cody</a>
|
||||
suggested <code>-trigraphs</code>. Both work but we used Yusuke’s idea.</p>
|
||||
<p>Cody added the <a href="1990/scjones/try.sh">try.sh</a> script to show exactly what the
|
||||
entry does.</p>
|
||||
<div id="1990_tbr">
|
||||
<h2 id="tbr-index.html"><a href="1990/tbr/tbr.c">1990/tbr</a> (<a href="1990/tbr/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="tbr"><a href="1990/tbr/index.html">1990/tbr</a></h1>
|
||||
<h2 id="source-code-tbr.c">Source code: <a href="1990/tbr/tbr.c">tbr.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to work with modern compilers; <code>exit(3)</code> returns void but the
|
||||
function was used in a binary expression so this wouldn’t even compile.</p>
|
||||
@@ -1016,7 +1069,8 @@ to be <code>fgets()</code> in the same way that the original entry is. This way
|
||||
version</a> is equivalent in function, like the
|
||||
author intended, but more compact.</p>
|
||||
<div id="1990_theorem">
|
||||
<h2 id="theorem-index.html"><a href="1990/theorem/theorem.c">1990/theorem</a> (<a href="1990/theorem/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="theorem"><a href="1990/theorem/index.html">1990/theorem</a></h1>
|
||||
<h2 id="source-code-theorem.c">Source code: <a href="1990/theorem/theorem.c">theorem.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to compile with modern systems.</p>
|
||||
<p>He also fixed some bugs that impacted the usability of this program including some
|
||||
@@ -1045,14 +1099,16 @@ original program and some of the programs it generates.</p>
|
||||
used in order to get this to work initially (prior to this output was there but
|
||||
incomplete).</p>
|
||||
<div id="1990_stig">
|
||||
<h2 id="stig-index.html"><a href="1990/stig/stig.c">1990/stig</a> (<a href="1990/stig/index.html">index.html</a>)</h2>
|
||||
<h1 id="stig"><a href="1990/stig/index.html">1990/stig</a></h1>
|
||||
<h2 id="source-code-stig.c">Source code: <a href="1990/stig/stig.c">stig.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed the paths in the Makefile so that this would build in Linux (it
|
||||
worked fine in macOS).</p>
|
||||
<p>He also changed the Makefile to use <code>bash</code> not <code>zsh</code> as not all systems have
|
||||
<code>zsh</code> and the Makefile actually sets <code>SHELL</code> to <code>bash</code>.</p>
|
||||
<div id="1990_westley">
|
||||
<h2 id="westley-index.html-3"><a href="1990/westley/westley.c">1990/westley</a> (<a href="1990/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="westley-3"><a href="1990/westley/index.html">1990/westley</a></h1>
|
||||
<h2 id="source-code-westley.c-3">Source code: <a href="1990/westley/westley.c">westley.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this for modern systems. It had <code>1s</code> in places for a <code>short int</code> which was changed to just <code>1</code>. Since it’s instructional to see the
|
||||
differences he has provided an alternate version,
|
||||
@@ -1065,10 +1121,11 @@ and to not crash if no arg is specified.</p>
|
||||
<p>The alt code did NOT have arg checks added as it is actually a copy of the
|
||||
original code.</p>
|
||||
<div id="1991">
|
||||
<h1 id="section-7">1991</h1>
|
||||
<h1 id="section-7"><a href="1991/index.html">1991</a></h1>
|
||||
</div>
|
||||
<div id="1991_ant">
|
||||
<h2 id="ant-index.html"><a href="1991/ant/ant.c">1991/ant</a> (<a href="1991/ant/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="ant"><a href="1991/ant/index.html">1991/ant</a></h1>
|
||||
<h2 id="source-code-ant.c">Source code: <a href="1991/ant/ant.c">ant.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added <a href="1991/ant/ant.alt.c">alt code</a> that will be a bit easier to use for
|
||||
those familiar with vim in the following ways:</p>
|
||||
@@ -1082,7 +1139,8 @@ those familiar with vim in the following ways:</p>
|
||||
</ul>
|
||||
<p>The other keys were left unchanged.</p>
|
||||
<div id="1991_brnstnd">
|
||||
<h2 id="brnstnd-index.html"><a href="1991/brnstnd/brnstnd.c">1991/brnstnd</a> (<a href="1991/brnstnd/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="brnstnd"><a href="1991/brnstnd/index.html">1991/brnstnd</a></h1>
|
||||
<h2 id="source-code-brnstnd.c">Source code: <a href="1991/brnstnd/brnstnd.c">brnstnd.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this for modern systems. There were two invalid operands to binary
|
||||
expression (<code>char *</code> and <code>void</code> and <code>int</code> and <code>void</code>) to resolve and
|
||||
@@ -1095,7 +1153,8 @@ slightly more like the original, even though it’s unused.</p>
|
||||
<p>Cody also added the <a href="1991/brnstnd/try.sh">try.sh</a> script and
|
||||
<a href="1991/brnstnd/try.txt">try.txt</a> which the script uses.</p>
|
||||
<div id="1991_buzzard">
|
||||
<h2 id="buzzard-index.html"><a href="1991/buzzard/buzzard.c">1991/buzzard</a> (<a href="1991/buzzard/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="buzzard"><a href="1991/buzzard/index.html">1991/buzzard</a></h1>
|
||||
<h2 id="source-code-buzzard.c">Source code: <a href="1991/buzzard/buzzard.c">buzzard.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this so that the coordinates being specified would not crash the
|
||||
program. This happened because the function that calls <code>atoi(3)</code> took an arg
|
||||
@@ -1110,14 +1169,16 @@ him): <code>k</code> for forward, <code>h</code> for left and <code>l</code> for
|
||||
more useful way to exit, just entering <code>q</code> followed by enter, rather than
|
||||
completing or killing the program.</p>
|
||||
<div id="1991_davidguy">
|
||||
<h2 id="davidguy-index.html"><a href="1991/davidguy/davidguy.c">1991/davidguy</a> (<a href="1991/davidguy/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="davidguy"><a href="1991/davidguy/index.html">1991/davidguy</a></h1>
|
||||
<h2 id="source-code-davidguy.c">Source code: <a href="1991/davidguy/davidguy.c">davidguy.c</a></h2>
|
||||
</div>
|
||||
<p>As some systems like macOS can be particular about not declaring functions <a href="#cody">Cody</a>
|
||||
added to the Makefile some <code>-include</code> options. These appear to not be strictly
|
||||
necessary but it was done due to other syscalls being a problem not being
|
||||
declared first.</p>
|
||||
<div id="1991_dds">
|
||||
<h2 id="dds-index.html-1"><a href="1991/dds/dds.c">1991/dds</a> (<a href="1991/dds/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="dds-1"><a href="1991/dds/index.html">1991/dds</a></h1>
|
||||
<h2 id="source-code-dds.c-1">Source code: <a href="1991/dds/dds.c">dds.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed a segfault that prevented this entry from working in any condition
|
||||
and he also made it work for clang. He also added checks for NULL <code>FILE *</code>s.
|
||||
@@ -1192,7 +1253,8 @@ The definition of whether that should be a bug to fix or a feature to not fix
|
||||
was pondered and changed numerous times and ultimately that problem with this
|
||||
entry was fixed. It has not been done in all.</p>
|
||||
<div id="1991_fine">
|
||||
<h2 id="fine-index.html"><a href="1991/fine/fine.c">1991/fine</a> (<a href="1991/fine/index.html">index.html</a>)</h2>
|
||||
<h1 id="fine"><a href="1991/fine/index.html">1991/fine</a></h1>
|
||||
<h2 id="source-code-fine.c">Source code: <a href="1991/fine/fine.c">fine.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made it look much more like the original entry even after the fix that
|
||||
increased the count in characters from 80 to 106, getting it back down to just
|
||||
@@ -1210,7 +1272,8 @@ some fun input for fun but mostly different output. He added a great string from
|
||||
Brian Westley and Cody also added several of his own (can you figure out exactly
|
||||
which ones? :-) )</p>
|
||||
<div id="1991_rince">
|
||||
<h2 id="rince-index.html"><a href="1991/rince/rince.c">1991/rince</a> (<a href="1991/rince/index.html">index.html</a>)</h2>
|
||||
<h1 id="rince"><a href="1991/rince/index.html">1991/rince</a></h1>
|
||||
<h2 id="source-code-rince.c">Source code: <a href="1991/rince/rince.c">rince.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed it so that the messages that show if you won or lost will be seen
|
||||
after the end of the game. The reason it did not work before is curses was ended
|
||||
@@ -1223,7 +1286,8 @@ remove the maximum number of moves you may make and another to let you configure
|
||||
the maximum number of moves, even if that is making it harder to win. Naturally
|
||||
the above fix was applied to these versions too.</p>
|
||||
<div id="1991_westley">
|
||||
<h2 id="westley-index.html-4"><a href="1991/westley/westley.c">1991/westley</a> (<a href="1991/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="westley-4"><a href="1991/westley/index.html">1991/westley</a></h1>
|
||||
<h2 id="source-code-westley.c-4">Source code: <a href="1991/westley/westley.c">westley.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed a segfault in this program which prevented it from working. The
|
||||
problem was that the read-only char array <code>char *z[]</code> was being written to. The
|
||||
@@ -1241,10 +1305,11 @@ version that supposedly (:-) ) always wins.</p>
|
||||
<p>Cody also fixed the make clobber rule where a file was left lying about when it
|
||||
should have been removed.</p>
|
||||
<div id="1992">
|
||||
<h1 id="section-8">1992</h1>
|
||||
<h1 id="section-8"><a href="1992/index.html">1992</a></h1>
|
||||
</div>
|
||||
<div id="1992_adrian">
|
||||
<h2 id="adrian-index.html"><a href="1992/adrian/adrian.c">1992/adrian</a> (<a href="1992/adrian/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="adrian"><a href="1992/adrian/index.html">1992/adrian</a></h1>
|
||||
<h2 id="source-code-adrian.c">Source code: <a href="1992/adrian/adrian.c">adrian.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed the code so that it will try opening the file the code was compiled
|
||||
from (<code>__FILE__</code>), not <code>adgrep.c</code>, as the latter does not exist: <code>adgrep</code> is
|
||||
@@ -1294,7 +1359,8 @@ and some of the tools this entry generates. Unlike other scripts, it does not
|
||||
clear the screen after compilation so that one can see how the other files are
|
||||
generated.</p>
|
||||
<div id="1992_albert">
|
||||
<h2 id="albert-index.html"><a href="1992/albert/albert.c">1992/albert</a> (<a href="1992/albert/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="albert"><a href="1992/albert/index.html">1992/albert</a></h1>
|
||||
<h2 id="source-code-albert.c">Source code: <a href="1992/albert/albert.c">albert.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to compile with modern systems. Note that in 1996 a bug fix was
|
||||
applied to the code, provided as the alt code as that version is not obfuscated.
|
||||
@@ -1306,7 +1372,8 @@ return <code>void</code>.</p>
|
||||
<a href="1992/albert/try.alt.sh">try.alt.sh</a> scripts that correspond to the entry and
|
||||
the alt code.</p>
|
||||
<div id="1992_ant">
|
||||
<h2 id="ant-index.html-1"><a href="1992/ant/ant.c">1992/ant</a> (<a href="1992/ant/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="ant-1"><a href="1992/ant/index.html">1992/ant</a></h1>
|
||||
<h2 id="source-code-ant.c-1">Source code: <a href="1992/ant/ant.c">ant.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed the Makefile so that the program will actually work with it (or at
|
||||
least the rule to clobber files and link <code>am</code> to <code>ant</code>). The issue was that the
|
||||
@@ -1324,7 +1391,8 @@ necessary to include <code>time.h</code> so Cody did this as well as this exists
|
||||
systems too.</p>
|
||||
<p>Cody also added the <a href="1992/ant/try.sh">try.sh</a> script.</p>
|
||||
<div id="1992_buzzard.1">
|
||||
<h2 id="buzzard.1-index.html"><a href="1992/buzzard.1/buzzard.1.c">1992/buzzard.1</a> (<a href="1992/buzzard.1/index.html">index.html</a>)</h2>
|
||||
<h1 id="buzzard.1"><a href="1992/buzzard.1/index.html">1992/buzzard.1</a></h1>
|
||||
<h2 id="source-code-buzzard.1.c">Source code: <a href="1992/buzzard.1/buzzard.1.c">buzzard.1.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added a check for the right number of args, exiting 1 if not enough (2)
|
||||
used. This was not originally done but at a time it was changed to be considered
|
||||
@@ -1333,7 +1401,8 @@ verified that it was consistent with the <a href="bugs.html">bugs.html</a> file.
|
||||
<p>He also added the <a href="1992/buzzard.1/try.sh">try.sh</a> script to try out some
|
||||
commands that we suggested and some additional ones that he provide for some fun.</p>
|
||||
<div id="1992_buzzard.2">
|
||||
<h2 id="buzzard.2-index.html"><a href="1992/buzzard.2/buzzard.2.c">1992/buzzard.2</a> (<a href="1992/buzzard.2/index.html">index.html</a>)</h2>
|
||||
<h1 id="buzzard.2"><a href="1992/buzzard.2/index.html">1992/buzzard.2</a></h1>
|
||||
<h2 id="source-code-buzzard.2.c">Source code: <a href="1992/buzzard.2/buzzard.2.c">buzzard.2.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed the alt code to compile. The problem was it assumed that
|
||||
<code>exit(3)</code> returns a value, not <code>void</code>. This was fixed with a <code>,0</code>.</p>
|
||||
@@ -1341,7 +1410,8 @@ commands that we suggested and some additional ones that he provide for some fun
|
||||
<a href="1992/buzzard.2/try.alt.sh">try.alt.sh</a> scripts that correspond to the entry
|
||||
and its alt code.</p>
|
||||
<div id="1992_gson">
|
||||
<h2 id="gson-index.html"><a href="1992/gson/gson.c">1992/gson</a> (<a href="1992/gson/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="gson"><a href="1992/gson/index.html">1992/gson</a></h1>
|
||||
<h2 id="source-code-gson.c">Source code: <a href="1992/gson/gson.c">gson.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed a crash that prevented this entry from working in some cases in some
|
||||
systems (like macOS) by disabling the optimiser in the Makefile.</p>
|
||||
@@ -1357,16 +1427,18 @@ from <code>stdin</code> after starting the program). Ideally <code>fgets(3)</cod
|
||||
is a more problematic. See <a href="bugs.html#1992-gson">1992/gson in bugs.html</a> for more
|
||||
details if you’re interested in trying to understand it (or fix?).</p>
|
||||
<div id="1992_imc">
|
||||
<h2 id="imc-index.html"><a href="1992/imc/imc.c">1992/imc</a> (<a href="1992/imc/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="imc"><a href="1992/imc/index.html">1992/imc</a></h1>
|
||||
<h2 id="source-code-imc.c">Source code: <a href="1992/imc/imc.c">imc.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> provided the <a href="1992/imc/try.sh">try.sh</a> script.</p>
|
||||
<p>The original code, <a href="1992/imc/imc.orig.c">imc.orig.c</a>, assumed that <code>exit(3)</code>
|
||||
returned a value but this will cause problems where <code>exit(3)</code> returns void. The
|
||||
returned a value but this will cause problems where <code>exit(3)</code> returns <code>void</code>. The
|
||||
source code was modified to avoid this problem but like Cody did with other fixes
|
||||
he made this more like the original by redefining <code>exit</code> to use the comma
|
||||
operator so that it could be used in binary expressions.</p>
|
||||
<div id="1992_kivinen">
|
||||
<h2 id="kivinen-index.html"><a href="1992/kivinen/kivinen.c">1992/kivinen</a> (<a href="1992/kivinen/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="kivinen"><a href="1992/kivinen/index.html">1992/kivinen</a></h1>
|
||||
<h2 id="source-code-kivinen.c">Source code: <a href="1992/kivinen/kivinen.c">kivinen.c</a></h2>
|
||||
</div>
|
||||
<p>It was observed that on modern systems this goes much too quick. <a href="#yusuke">Yusuke</a> created
|
||||
a patch that calls <code>usleep(3)</code> but <a href="#cody">Cody</a> thought the value was too slow so he
|
||||
@@ -1387,7 +1459,8 @@ changing this.</p>
|
||||
<p>Yusuke also noted that there is a bug in the program where right after starting
|
||||
it moves towards the right but if you click the mouse it goes back.</p>
|
||||
<div id="1992_lush">
|
||||
<h2 id="lush-index.html"><a href="1992/lush/lush.c">1992/lush</a> (<a href="1992/lush/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="lush"><a href="1992/lush/index.html">1992/lush</a></h1>
|
||||
<h2 id="source-code-lush.c">Source code: <a href="1992/lush/lush.c">lush.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#yusuke">Yusuke</a> supplied a patch which makes this work with gcc. Due to how it works (see
|
||||
Judges’ remarks in the index.html file) this will not work with clang.</p>
|
||||
@@ -1397,11 +1470,13 @@ demonstrate it as using make was problematic.</p>
|
||||
<p>NOTE: this entry cannot work with clang due to different compiler messages (it
|
||||
will compile fine but it won’t work). See <a href="bugs.html">bugs.html</a> for details.</p>
|
||||
<div id="1992_marangon">
|
||||
<h2 id="marangon-index.html"><a href="1992/marangon/marangon.c">1992/marangon</a> (<a href="1992/marangon/index.html">index.html</a>)</h2>
|
||||
<h1 id="marangon"><a href="1992/marangon/index.html">1992/marangon</a></h1>
|
||||
<h2 id="source-code-marangon.c">Source code: <a href="1992/marangon/marangon.c">marangon.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made this more portable by changing the <code>void main()</code> to be <code>int main()</code>.</p>
|
||||
<div id="1992_nathan">
|
||||
<h2 id="nathan-index.html"><a href="1992/nathan/nathan.c">1992/nathan</a> (<a href="1992/nathan/index.html">index.html</a>)</h2>
|
||||
<h1 id="nathan"><a href="1992/nathan/index.html">1992/nathan</a></h1>
|
||||
<h2 id="source-code-nathan.c">Source code: <a href="1992/nathan/nathan.c">nathan.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the original file back as it was deemed that the export restrictions
|
||||
should no longer be a cause of concern for this entry. Doing this did require a
|
||||
@@ -1412,7 +1487,8 @@ participates in the IOCCC, that it must be our fault! :-)</p>
|
||||
<p>Cody also added the <a href="1992/nathan/try.sh">try.sh</a> script that runs a few commands
|
||||
that we suggested as well as one he provided.</p>
|
||||
<div id="1992_vern">
|
||||
<h2 id="vern-index.html"><a href="1992/vern/vern.c">1992/vern</a> (<a href="1992/vern/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="vern"><a href="1992/vern/index.html">1992/vern</a></h1>
|
||||
<h2 id="source-code-vern.c">Source code: <a href="1992/vern/vern.c">vern.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed an infinite loop if one were to input numbers < <code>0</code> or > <code>077</code>. The
|
||||
problem was that it tried to use <code>scanf(3)</code> with the format specifier <code>"%o %o"</code> in a
|
||||
@@ -1423,8 +1499,11 @@ processed or some error occurs) or a function it called returned non-zero.</p>
|
||||
new char arrays (always cleared in the beginning of the loop) and then using
|
||||
<code>strtol(3)</code> with a base of <code>8</code> (as it’s octal), checking for <code>< 0 || > 077</code> on
|
||||
both numbers (using <code>"%o %o"</code> does not solve the problem).</p>
|
||||
<p>This was deemed a problem to fix as the Judges’ remarks hinted that this was how
|
||||
it used to be.</p>
|
||||
<div id="1992_westley">
|
||||
<h2 id="westley-index.html-5"><a href="1992/westley/westley.c">1992/westley</a> (<a href="1992/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h1 id="westley-5"><a href="1992/westley/index.html">1992/westley</a></h1>
|
||||
<h2 id="source-code-westley.c-5">Source code: <a href="1992/westley/westley.c">westley.c</a></h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to work for clang by changing the third and fourth arg of
|
||||
<code>main()</code> to be <code>char ** inside</code>main()<code>; clang requires args 2 - 4 to be</code>char
|
||||
@@ -1465,12 +1544,12 @@ encourage you to try the original without two args :-)</p>
|
||||
<h1 id="section-9">1993</h1>
|
||||
</div>
|
||||
<div id="1993_ant">
|
||||
<h2 id="ant-index.html-2"><a href="1993/ant/ant.c">1993/ant</a> (<a href="1993/ant/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="ant-index.html"><a href="1993/ant/ant.c">1993/ant</a> (<a href="1993/ant/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1993/ant/try.sh">try.sh</a> script and a data file,
|
||||
<a href="1993/ant/ants.txt">ants.txt</a>, full of ants for the script.</p>
|
||||
<div id="1993_cmills">
|
||||
<h2 id="cmills-index.html-1"><a href="1993/cmills/cmills.c">1993/cmills</a> (<a href="1993/cmills/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="cmills-index.html"><a href="1993/cmills/cmills.c">1993/cmills</a> (<a href="1993/cmills/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#yusuke">Yusuke</a> suggested that with modern systems this goes too fast so he added a call
|
||||
to <code>usleep(3)</code> in a patch he made. <a href="#cody">Cody</a> made it configurable at compilation by
|
||||
@@ -1526,7 +1605,7 @@ index.html files for details.</p>
|
||||
entry and the alt version, both allowing one to change the args (and in the case
|
||||
of the alt one allowing one to change the amount to sleep).</p>
|
||||
<div id="1993_rince">
|
||||
<h2 id="rince-index.html-1"><a href="1993/rince/rince.c">1993/rince</a> (<a href="1993/rince/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="rince-index.html"><a href="1993/rince/rince.c">1993/rince</a> (<a href="1993/rince/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#yusuke">Yusuke</a> supplied a patch to get this to work in modern systems. This fix also
|
||||
applies the compatibility issue of <code>select(2)</code> described in the index.html file.</p>
|
||||
@@ -1542,7 +1621,7 @@ compile time. See the index.html for details.</p>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> made this use <code>fgets(3)</code> not <code>gets(3)</code>.</p>
|
||||
<div id="1993_vanb">
|
||||
<h2 id="vanb-index.html-1"><a href="1993/vanb/vanb.c">1993/vanb</a> (<a href="1993/vanb/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="vanb-index.html"><a href="1993/vanb/vanb.c">1993/vanb</a> (<a href="1993/vanb/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed this to work with clang. The problem was that the third arg to main()
|
||||
was not a <code>char **. Instead</code>O5()<code>(which was</code>main()<code>via</code>-DO5=main`) is now
|
||||
@@ -1612,7 +1691,7 @@ shorter PDF file,
|
||||
newsletter was found on the Internet Wayback Machine and the article was
|
||||
extracted as a PDF in the macOS <code>Preview.app</code> (<code>File -> Print</code> feature).</p>
|
||||
<div id="1994_imc">
|
||||
<h2 id="imc-index.html-1"><a href="1994/imc/imc.c">1994/imc</a> (<a href="1994/imc/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="imc-index.html"><a href="1994/imc/imc.c">1994/imc</a> (<a href="1994/imc/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="1994/imc/try.sh">try.sh</a> script.</p>
|
||||
<p>Cody also added inclusion of <code>unistd.h</code> for <code>getpid(2)</code>. While strictly speaking
|
||||
@@ -1659,7 +1738,7 @@ now there is more important work to do so that the next contest can run.</p>
|
||||
<p>Cody also added the <a href="1994/schnitzi/try.sh">try.sh</a> and
|
||||
<a href="1994/schnitzi/try.alt.sh">try.alt.sh</a> scripts.</p>
|
||||
<div id="1994_shapiro">
|
||||
<h2 id="shapiro-index.html-1"><a href="1994/shapiro/shapiro.c">1994/shapiro</a> (<a href="1994/shapiro/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="shapiro-index.html"><a href="1994/shapiro/shapiro.c">1994/shapiro</a> (<a href="1994/shapiro/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed a bug on systems where <code>EOF != -1</code>. The problem is that <code>getc()</code> and
|
||||
the related functions do not return <code>-1</code> on EOF or error but rather <code>EOF</code>.
|
||||
@@ -1700,7 +1779,7 @@ lines of the <code>weisberg</code>, feeding it to <code>primes(1)</code>, showin
|
||||
primes. It only does the reversed output because the program actually prints
|
||||
primes.</p>
|
||||
<div id="1994_westley">
|
||||
<h2 id="westley-index.html-6"><a href="1994/westley/westley.c">1994/westley</a> (<a href="1994/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="westley-index.html"><a href="1994/westley/westley.c">1994/westley</a> (<a href="1994/westley/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> converted the spoiler compiler options (provided by the author) to be
|
||||
compiler commands and added a script <a href="1994/westley/try.sh">try.sh</a> to
|
||||
@@ -1788,7 +1867,7 @@ entry decrypts the text or something like that.</p>
|
||||
<h1 id="section-12">1996</h1>
|
||||
</div>
|
||||
<div id="1996_august">
|
||||
<h2 id="august-index.html-1"><a href="1996/august/august.c">1996/august</a> (<a href="1996/august/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="august-index.html"><a href="1996/august/august.c">1996/august</a> (<a href="1996/august/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed a segfault in this program that prevented it from working right and
|
||||
also fixed an infinite loop in the try commands.</p>
|
||||
@@ -1876,7 +1955,7 @@ loop so having it in a script is less desired).</p>
|
||||
method suggested for SunOS rather than having to update the Makefile manually or
|
||||
running a more complicated command: now one can just run <code>make</code>.</p>
|
||||
<div id="1996_westley">
|
||||
<h2 id="westley-index.html-7"><a href="1996/westley/westley.c">1996/westley</a> (<a href="1996/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="westley-index.html-1"><a href="1996/westley/westley.c">1996/westley</a> (<a href="1996/westley/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed a segfault in this entry as well as it displaying environmental
|
||||
variables. Although the scripts showed correct output, it somewhat lessened the
|
||||
@@ -2163,11 +2242,11 @@ more confusing (even if not confusing).</p>
|
||||
<p><a href="#cody">Cody</a> made this more portable by changing the <code>void main</code> to <code>int main</code>.</p>
|
||||
<p>Cody also added the <a href="2000/primenum/try.sh">try.sh</a> script.</p>
|
||||
<div id="2000_rince">
|
||||
<h2 id="rince-index.html-2"><a href="2000/rince/rince.c">2000/rince</a> (<a href="2000/rince/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="rince-index.html-1"><a href="2000/rince/rince.c">2000/rince</a> (<a href="2000/rince/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="2000/rince/try.sh">try.sh</a> script.</p>
|
||||
<div id="2000_robison">
|
||||
<h2 id="robison-index.html-1"><a href="2000/robison/robison.c">2000/robison</a> (<a href="2000/robison/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="robison-index.html"><a href="2000/robison/robison.c">2000/robison</a> (<a href="2000/robison/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed an infinite loop that occurred if invalid input was entered, flooding
|
||||
the screen with:</p>
|
||||
@@ -2228,7 +2307,7 @@ details) the source code is now executable by default.</p>
|
||||
<h1 id="section-15">2001</h1>
|
||||
</div>
|
||||
<div id="2001_anonymous">
|
||||
<h2 id="anonymous-index.html-1"><a href="2001/anonymous/anonymous.c">2001/anonymous</a> (<a href="2001/anonymous/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="anonymous-index.html"><a href="2001/anonymous/anonymous.c">2001/anonymous</a> (<a href="2001/anonymous/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> fixed both the supplementary program and the program itself (both of which
|
||||
segfaulted and once that was fixed only the binary was modified; it was not run
|
||||
@@ -2429,7 +2508,7 @@ the author. The other problems are documented so were not fixed. See
|
||||
index.html for details.</p>
|
||||
<p>Cody also added the <a href="2001/schweikh/try.sh">try.sh</a> script.</p>
|
||||
<div id="2001_westley">
|
||||
<h2 id="westley-index.html-8"><a href="2001/westley/westley.c">2001/westley</a> (<a href="2001/westley/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="westley-index.html-2"><a href="2001/westley/westley.c">2001/westley</a> (<a href="2001/westley/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the script <a href="2001/westley/try.sh">try.sh</a> to automate a heap of commands
|
||||
that we, the IOCCC judges, suggested, as well as some additional ones that he
|
||||
@@ -2439,7 +2518,7 @@ described in the index.html, based on the author’s remarks.</p>
|
||||
<h1 id="section-16">2004</h1>
|
||||
</div>
|
||||
<div id="2004_anonymous">
|
||||
<h2 id="anonymous-index.html-2"><a href="2004/anonymous/anonymous.c">2004/anonymous</a> (<a href="2004/anonymous/index.html%5D">index.html</a>)</h2>
|
||||
<h2 id="anonymous-index.html-1"><a href="2004/anonymous/anonymous.c">2004/anonymous</a> (<a href="2004/anonymous/index.html%5D">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="2004/anonymous/try.sh">try.sh</a> script.</p>
|
||||
<div id="2004_arachnid">
|
||||
@@ -3168,7 +3247,7 @@ theoretically make it work in Windows.</p>
|
||||
<p>Cody also added the <a href="2012/omoikane/try.sh">try.sh</a> and
|
||||
<a href="2012/omoikane/try.alt.sh">try.alt.sh</a> scripts.</p>
|
||||
<div id="2012_tromp">
|
||||
<h2 id="tromp-index.html-1"><a href="2012/tromp/tromp.c">2012/tromp</a> (<a href="2012/tromp/index.html">index.html</a>)</h2>
|
||||
<h2 id="tromp-index.html"><a href="2012/tromp/tromp.c">2012/tromp</a> (<a href="2012/tromp/index.html">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="2012/tromp/try.sh">try.sh</a> script.</p>
|
||||
<div id="2012_vik">
|
||||
@@ -3350,7 +3429,7 @@ Firefox both had the problem.</p>
|
||||
implicitly (Linux doesn’t seem to but macOS does).</p>
|
||||
<p>Cody also added the <a href="2013/morgan1/try.sh">try.sh</a> script.</p>
|
||||
<div id="2013_robison">
|
||||
<h2 id="robison-index.html-2"><a href="2013/robison/robison.c">2013/robison</a> (<a href="2013/robison/index.html">index.html</a>)</h2>
|
||||
<h2 id="robison-index.html-1"><a href="2013/robison/robison.c">2013/robison</a> (<a href="2013/robison/index.html">index.html</a>)</h2>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="2013/robison/try.sh">try.sh</a> script.</p>
|
||||
<div id="2014">
|
||||
|
||||
+160
-86
@@ -29,12 +29,13 @@ on a IOCCC entry by entry basis.
|
||||
|
||||
|
||||
<div id="1984">
|
||||
# 1984
|
||||
# [1984](1984/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1984_anonymous">
|
||||
## [1984/anonymous](1984/anonymous/anonymous.c) ([index.html](1984/anonymous/index.html))
|
||||
# [1984/anonymous](1984/anonymous/index.html)
|
||||
## Source code: [anonymous.c](1984/anonymous/anonymous.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to work for macOS.
|
||||
@@ -61,7 +62,8 @@ Scovell](https://web.archive.org/web/20070120220721/https://thomasscovell.com/ta
|
||||
|
||||
|
||||
<div id="1984_decot">
|
||||
## [1984/decot](1984/decot/decot.c) ([index.html](1984/decot/index.html]))
|
||||
# [1984/decot](1984/decot/index.html)
|
||||
## Source code: [decot.c](1984/decot/decot.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to not require `-traditional-cpp` which some compilers like
|
||||
@@ -128,7 +130,8 @@ To see the difference from start to fixed:
|
||||
|
||||
|
||||
<div id="1984_laman">
|
||||
## [1984/laman](1984/laman/laman.c) ([index.html](1984/laman/index.html]))
|
||||
# [1984/laman](1984/laman/index.html)
|
||||
## Source code: [laman.c](1984/laman/laman.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [try.sh](1984/laman/try.sh) script.
|
||||
@@ -140,7 +143,8 @@ This was fixed on 30 October 2023 after the bug status was changed from INABIAF
|
||||
|
||||
|
||||
<div id="1984_mullender">
|
||||
## [1984/mullender](1984/mullender/mullender.c) ([index.html](1984/mullender/index.html]))
|
||||
# [1984/mullender](1984/mullender/index.html)
|
||||
## Source code: [mullender.c](1984/mullender/mullender.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) provided an [alternate version](1984/mullender/mullender.alt.c),
|
||||
@@ -164,12 +168,13 @@ Repo](https://github.com/dspinellis/unix-history-repo/tree/Research-Release).
|
||||
|
||||
|
||||
<div id="1985">
|
||||
# 1985
|
||||
# [1985](1985/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1985_applin">
|
||||
## [1985/applin](1985/applin/applin.c) ([index.html](1985/applin/index.html]))
|
||||
# [1984/applin](1985/applin/index.html)
|
||||
## Source code: [applin.c](1985/applin/applin.c)
|
||||
</div>
|
||||
|
||||
Both [Cody](#cody) and [Yusuke](#yusuke) fixed this; Yusuke got this to not crash and Cody fixed it
|
||||
@@ -195,7 +200,8 @@ returning to the shell. The original code does not have this change.
|
||||
|
||||
|
||||
<div id="1985_august">
|
||||
## [1985/august](1985/august/august.c) ([index.html](1985/august/index.html))
|
||||
# [1985/august](1985/august/index.html)
|
||||
## Source code: [august.c](1985/august/august.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody), out of abundance of caution, added a second arg to `main()` because some
|
||||
@@ -216,7 +222,8 @@ default value).
|
||||
|
||||
|
||||
<div id="1985_lycklama">
|
||||
## [1985/lycklama](1985/lycklama/lycklama.c) ([index.html](1985/lycklama/index.html]))
|
||||
# [1985/lycklama](1985/lycklama/index.html)
|
||||
## Source code: [lycklama.c](1985/lycklama/lycklama.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to compile with modern compilers. In the past one could get away
|
||||
@@ -231,7 +238,8 @@ Cody also provided the [try.alt.sh](1985/lycklama/try.alt.sh) script.
|
||||
|
||||
|
||||
<div id="1985_shapiro">
|
||||
## [1985/shapiro](1985/shapiro/shapiro.c) ([index.html](1985/shapiro/index.html]))
|
||||
# [1985/shapiro](1985/1985/lycklama/index.html)
|
||||
## Source code: [index.html](1985/shapiro/shapiro.c])
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the alt code which allows one to resize the maze and he also added
|
||||
@@ -243,7 +251,8 @@ the default).
|
||||
|
||||
|
||||
<div id="1985_sicherman">
|
||||
## [1985/sicherman](1985/sicherman/sicherman.c) ([index.html](1985/sicherman/index.html]))
|
||||
# [1985/sicherman](1985/sicherman/index.html)
|
||||
## Source code: [1985/sicherman](1985/sicherman/sicherman.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this _very twisted entry_ to not require `-traditional-cpp`. Fixing
|
||||
@@ -362,12 +371,13 @@ Cody also added the [try.sh](1985/sicherman/try.sh) and
|
||||
|
||||
|
||||
<div id="1986">
|
||||
# 1986
|
||||
# [1986](1986/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1986_applin">
|
||||
## [1986/applin](1986/applin/applin.c) ([index.html](1986/applin/index.html]))
|
||||
# [1986/applin](1986/applin/index.html])
|
||||
## Source code: [applin.c](1986/applin/applin.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) made the C file executable so one does not have to do `sh
|
||||
@@ -375,14 +385,16 @@ Cody also added the [try.sh](1985/sicherman/try.sh) and
|
||||
|
||||
|
||||
<div id="1986_bright">
|
||||
## [1986/bright](1986/bright/bright.c) ([index.html](1986/bright/index.html]))
|
||||
# [1986/bright](1986/bright/index.html)
|
||||
## Source code: [bright.c](1986/bright/bright.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [try.sh](1986/bright/try.sh) script.
|
||||
|
||||
|
||||
<div id="1986_hague">
|
||||
## [1986/hague](1986/hague/hague.c) ([index.html](1986/hague/index.html]))
|
||||
# [1986/hague](1986/hague/index.html])
|
||||
## Source code: [hague.c](1986/hague/hague.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) made this use `fgets()`.
|
||||
@@ -392,7 +404,8 @@ program the added `input.txt` file.
|
||||
|
||||
|
||||
<div id="1986_holloway">
|
||||
## [1986/holloway](1986/holloway/holloway.c) ([index.html](1986/holloway/index.html]))
|
||||
# [1986/holloway](1986/holloway/index.html)
|
||||
## Source code: [holloway.c](1986/holloway/holloway.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to compile and work with clang (it already worked with gcc).
|
||||
@@ -404,7 +417,8 @@ and gcc.
|
||||
|
||||
|
||||
<div id="1986_marshall">
|
||||
## [1986/marshall](1986/marshall/marshall.c) ([index.html](1986/marshall/index.html]))
|
||||
# [1986/marshall](1986/marshall/index.html)
|
||||
## Source code: [marshall.c](1986/marshall/marshall.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) got this to compile and work with clang and gcc. He noted that he tried to
|
||||
@@ -466,7 +480,8 @@ are produced.
|
||||
|
||||
|
||||
<div id="1986_pawka">
|
||||
## [1986/pawka](1986/pawka/pawka.c) ([index.html](1986/pawka/index.html))
|
||||
# [1986/pawka](1986/pawka/index.html)
|
||||
## Source code: [pawka.c](1986/pawka/pawka.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) noticed and fixed a funny mistake in the Makefile where a
|
||||
@@ -475,7 +490,8 @@ are produced.
|
||||
|
||||
|
||||
<div id="1986_stein">
|
||||
## [1986/stein](1986/stein/stein.c) ([index.html](1986/stein/index.html]))
|
||||
# [1986/stein](1986/stein/index.html)
|
||||
## Source code: [stein.c](1986/stein/stein.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) restored the original entry which was a single line. The code
|
||||
@@ -488,7 +504,8 @@ commands that we suggest in order to get it to show clean output.
|
||||
|
||||
|
||||
<div id="1986_wall">
|
||||
## [1986/wall](1986/wall/wall.c) ([index.html](1986/wall/index.html]))
|
||||
# [1986/wall](1986/wall/index.html)
|
||||
## Source code: [wall.c](1986/wall/wall.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this so that it does not require `-traditional-cpp`. This took a fair
|
||||
@@ -599,19 +616,21 @@ There might have been other changes as well.
|
||||
|
||||
|
||||
<div id="1987">
|
||||
# 1987
|
||||
# [1987](1987/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1987_biggar">
|
||||
## [1987/biggar](1987/biggar/biggar.c) ([index.html](1987/biggar/index.html))
|
||||
# [1987/biggar](1987/biggar/index.html)
|
||||
## Source code: [biggar.c](1987/biggar/biggar.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [try.sh](1987/biggar/try.sh) script.
|
||||
|
||||
|
||||
<div id="1987_heckbert">
|
||||
## [1987/heckbert](1987/heckbert/heckbert.c) ([index.html](1987/heckbert/index.html))
|
||||
# [1987/heckbert](1987/heckbert/index.html)
|
||||
## Source code: [heckbert.c](1987/heckbert/heckbert.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) made this look more like the original entry by restoring the `#define` of
|
||||
@@ -627,7 +646,8 @@ that for System V we had to do this) Cody added to the Makefile
|
||||
|
||||
|
||||
<div id="1987_hines">
|
||||
## [1987/hines](1987/hines/hines.c) ([index.html](1987/hines/index.html))
|
||||
# [1987/hines](1987/hines/index.html)
|
||||
## Source code: [hines.c](1987/hines/hines.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [try.sh](1987/hines/try.sh) script and the C file
|
||||
@@ -637,7 +657,8 @@ running the program on the text file demonstrates.
|
||||
|
||||
|
||||
<div id="1987_lievaart">
|
||||
## [1987/lievaart](1987/lievaart/lievaart.c) ([index.html](1987/lievaart/index.html))
|
||||
# [1987/lievaart](1987/lievaart/index.html)
|
||||
## Source code: [lievaart.c](1987/lievaart/lievaart.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added back the documented checks for invalid input which no longer worked
|
||||
@@ -684,7 +705,8 @@ size constraints of the contest).
|
||||
|
||||
|
||||
<div id="1987_wall">
|
||||
## [1987/wall](1987/wall/wall.c) ([index.html](1987/wall/index.html]))
|
||||
# [1987/wall](1987/wall/index.html)
|
||||
## Source code: [wall.c](1987/wall/wall.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) made this use `fgets(3)`.
|
||||
@@ -693,7 +715,8 @@ Cody also added the [try.sh](1987/wall/try.sh) script.
|
||||
|
||||
|
||||
<div id="1987_westley">
|
||||
## [1987/westley](1987/westley/westley.c) ([index.html](1987/westley/index.html]))
|
||||
# [1987/westley](1987/westley/index.html)
|
||||
## Source code: [westley.c](1987/westley/westley.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this for modern systems. The problem was `'assignment to cast is
|
||||
@@ -710,12 +733,13 @@ unlikely(?) but nevertheless suggested case that `putchar()` is not available.
|
||||
|
||||
|
||||
<div id="1988">
|
||||
# 1988
|
||||
# [1988](1988/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1988_dale">
|
||||
## [1988/dale](1988/dale/dale.c) ([index.html](1988/dale/index.html]))
|
||||
# [1988/dale](1988/dale/index.html)
|
||||
## Source code: [dale.c](1988/dale/dale.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this twisted entry (as we called it :-) ) for modern compilers,
|
||||
@@ -797,7 +821,8 @@ Cody also provided the [try.sh](1988/dale/try.sh) script.
|
||||
|
||||
|
||||
<div id="1988_isaak">
|
||||
## [1988/isaak](1988/isaak/isaak.c) ([index.html](1988/isaak/index.html]))
|
||||
# [1988/isaak](1988/isaak/index.html)
|
||||
## Source code: [isaak.c](1988/isaak/isaak.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to work for modern systems. The problem was that the important
|
||||
@@ -807,7 +832,8 @@ index.html file for more details.
|
||||
|
||||
|
||||
<div id="1988_litmaath">
|
||||
## [1988/litmaath](1988/litmaath/litmaath.c) ([index.html](1988/litmaath/index.html))
|
||||
# [1988/litmaath](1988/litmaath/index.html)
|
||||
## Source code: [litmaath.c](1988/litmaath/litmaath.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the alt code which is code that we suggested at the time of
|
||||
@@ -815,7 +841,8 @@ publication, in the remarks, to help understand the entry, and for fun.
|
||||
|
||||
|
||||
<div id="1988_phillipps">
|
||||
## [1988/phillipps](1988/phillipps/phillipps.c) ([index.html](1988/phillipps/index.html]))
|
||||
# [1988/phillipps](1988/phillipps/index.html)
|
||||
## Source code: [phillipps.c](1988/phillipps/phillipps.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this for modern systems. It did not compile with clang because it
|
||||
@@ -836,14 +863,16 @@ to itself and `pain()` does now.
|
||||
|
||||
|
||||
<div id="1988_reddy">
|
||||
## [1988/reddy](1988/reddy/reddy.c) ([index.html](1988/reddy/index.html))
|
||||
# [1988/reddy](1988/reddy/index.html)
|
||||
## Source code: [reddy.c](1988/reddy/reddy.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) made this use `fgets(3)`.
|
||||
|
||||
|
||||
<div id="1988_spinellis">
|
||||
## [1988/spinellis](1988/spinellis/spinellis.c) ([index.html](1988/spinellis/index.html]))
|
||||
# [1988/spinellis](1988/spinellis/index.html)
|
||||
## Source code: [spinellis.c](1988/spinellis/spinellis.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) provided an [alternate version](1988/spinellis/spinellis.alt.c) so that
|
||||
@@ -861,7 +890,8 @@ thank him for this ghastly point! :-)
|
||||
|
||||
|
||||
<div id="1988_westley">
|
||||
## [1988/westley](1988/westley/westley.c) ([index.html](1988/westley/index.html]))
|
||||
# [1988/westley](1988/westley/index.html)
|
||||
## Source code: [westley.c](1988/westley/westley.c)
|
||||
</div>
|
||||
|
||||
The [original version](1988/westley/westley.alt.c), provided as alternate code,
|
||||
@@ -879,12 +909,13 @@ not strictly necessary but nonetheless more correct, even if not warned against.
|
||||
|
||||
|
||||
<div id="1989">
|
||||
# 1989
|
||||
# [1989](1989/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1989_fubar">
|
||||
## [1989/fubar](1989/fubar/fubar.c) ([index.html](1989/fubar/index.html]))
|
||||
# [1989/fubar](1989/fubar/index.html)
|
||||
## Source code: [fubar.c](1989/fubar/fubar.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) got this to work with modern systems. The main issues were that an
|
||||
@@ -920,7 +951,8 @@ Cody also added the [try.sh](1989/fubar/try.sh) script.
|
||||
|
||||
|
||||
<div id="1989_jar.1">
|
||||
## [1989/jar.1](1989/jar.1/jar.1.c) ([index.html](1989/jar.1/index.html]))
|
||||
# [1989/jar.1](1989/jar.1/index.html)
|
||||
## Source code: [jar.1.c](1989/jar.1/jar.1.c)
|
||||
</div>
|
||||
|
||||
To prevent annoying output to `/dev/tty` we changed the code to simulate the
|
||||
@@ -939,7 +971,8 @@ entry and the alt code) anyway, it works out well.
|
||||
|
||||
|
||||
<div id="1989_jar.2">
|
||||
## [1989/jar.2](1989/jar.2/jar.2.c) ([index.html](1989/jar.2/index.html]))
|
||||
# [1989/jar.2](1989/jar.2/index.html)
|
||||
## Source code: [jar.2.c](1989/jar.2/jar.2.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to work with modern compilers. Modern compilers do not allow
|
||||
@@ -980,7 +1013,8 @@ because the `alt` rule had what normally is in the `${PROG}.alt` rule.
|
||||
|
||||
|
||||
<div id="1989_ovdluhe">
|
||||
## [1989/ovdluhe](1989/ovdluhe/ovdluhe.c) ([index.html](1989/ovdluhe/index.html]))
|
||||
# [1989/ovdluhe](1989/ovdluhe/index.html)
|
||||
## Source code: [ovdluhe.c](1989/ovdluhe/ovdluhe.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed an infinite loop where the program would print the same thing over
|
||||
@@ -1002,7 +1036,8 @@ discovered and fixed.
|
||||
|
||||
|
||||
<div id="1989_paul">
|
||||
## [1989/paul](1989/paul/paul.c) ([index.html](1989/paul/index.html]))
|
||||
# [1989/paul](1989/paul/index.html)
|
||||
## Source code: [paul.c](1989/paul/paul.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed a segfault under macOS that prevented it from working. The problem
|
||||
@@ -1015,7 +1050,8 @@ index.html for details.
|
||||
|
||||
|
||||
<div id="1989_robison">
|
||||
## [1989/robison](1989/robison/robison.c) ([index.html](1989/robison/index.html]))
|
||||
# [1989/robison](1989/robison/index.html)
|
||||
## Source code: [robison.c](1989/robison/robison.c)
|
||||
</div>
|
||||
|
||||
[Yusuke Endoh](#yusuke) fixed this to compile under modern systems. To see the changes
|
||||
@@ -1032,7 +1068,8 @@ Cody also added the [try.sh](1989/robison/try.sh) script.
|
||||
|
||||
|
||||
<div id="1989_tromp">
|
||||
## [1989/tromp](1989/tromp/tromp.c) ([index.html](1989/tromp/index.html]))
|
||||
# [1989/tromp](1989/tromp/index.html)
|
||||
## Source code: [tromp.c](1989/tromp/tromp.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) and [Yusuke](#yusuke) fixed this entry: Yusuke fixed this to compile with gcc and Cody
|
||||
@@ -1063,14 +1100,16 @@ not his only reason :-) )
|
||||
|
||||
|
||||
<div id="1989_vanb">
|
||||
## [1989/vanb](1989/vanb/vanb.c) ([index.html](1989/vanb/index.html]))
|
||||
# [1989/vanb](1989/vanb/index.html)
|
||||
## Source code: [vanb.c](1989/vanb/vanb.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [try.sh](1989/vanb/try.sh) script.
|
||||
|
||||
|
||||
<div id="1989_westley">
|
||||
## [1989/westley](1989/westley/westley.c) ([index.html](1989/westley/index.html]))
|
||||
# [1989/westley](1989/westley/index.html)
|
||||
## Source code: [westley.c](1989/westley/westley.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this for clang, except that two versions generated by the program
|
||||
@@ -1091,7 +1130,7 @@ might just not be possible.
|
||||
The way it was fixed might be hard to see and describe but this is an attempt.
|
||||
Because `main()`'s args were all `int`s, `main()` had to call a new function
|
||||
which is allowed to have args as `int` (instead of `main()`'s args being int and
|
||||
the rest being `char **) but this is not as straight forward as it is for other
|
||||
the rest being `char **`) but this is not as straight forward as it is for other
|
||||
entries (if you look at the code you might see what is meant; the function called
|
||||
is `pain()`).
|
||||
|
||||
@@ -1100,17 +1139,17 @@ four**, even though the original program has four args. This is because not all
|
||||
versions of clang support four args and that is one of the issues with version 2
|
||||
and 3 as it generates `main()` to have four args and the wrong type, all `int`s.
|
||||
|
||||
In the call to the new function, `pain()`, from `main()`, one of the `char **s
|
||||
In the call to the new function, `pain()`, from `main()`, one of the `char **`s
|
||||
is used twice, once as `argc` with bitwise AND with 2, naturally first being
|
||||
cast to an `int` (`(int)ABBA&2`), and once as a `char **, the fourth arg to
|
||||
cast to an `int` (`(int)ABBA&2`), and once as a `char **`, the fourth arg to
|
||||
`pain()` (yes even though `pain()` takes all `int`s).
|
||||
|
||||
The argc,, meanwhile, `tang`, is used once and the second arg, `char **gnat` is
|
||||
The argc, meanwhile, `tang`, is used once and the second arg, `char **gnat` is
|
||||
used once (observe how `tang` is `gnat` spelt backwards as this is one of the
|
||||
things that makes this a masterpiece and very hard if not impossible to fix
|
||||
completely). Fortunately it is not actually necessary to use all four args (of
|
||||
`main()`) in the call which might or might not be surprising, especially as it
|
||||
uses one of the args, a `char **, instead of an `int` (through casts), twice
|
||||
uses one of the args, a `char **`, instead of an `int` (through casts), twice
|
||||
rather than just passing in for the fourth arg (the fourth arg passed in is the
|
||||
third arg to `main()`).
|
||||
|
||||
@@ -1142,12 +1181,13 @@ environmental variable; see the index.html for details.
|
||||
|
||||
|
||||
<div id="1990">
|
||||
# 1990
|
||||
# [1990](1990/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1990_baruch">
|
||||
## [1990/baruch](1990/baruch/baruch.c) ([index.html](1990/baruch/index.html]))
|
||||
# [1990/baruch](1990/baruch/index.html)
|
||||
## Source code: [baruch.c](1990/baruch/baruch.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [try.sh](1990/baruch/try.sh) script.
|
||||
@@ -1169,7 +1209,8 @@ judges was retained.
|
||||
|
||||
|
||||
<div id="1990_cmills">
|
||||
## [1990/cmills](1990/cmills/cmills.c) ([index.html](1990/cmills/index.html]))
|
||||
# [1990/cmills](1990/cmills/index.html)
|
||||
## Source code: [cmills.c](1990/cmills/cmills.c)
|
||||
</div>
|
||||
|
||||
[Yusuke](#yusuke) got this to work in modern systems (it previously resulted in a bus
|
||||
@@ -1179,7 +1220,8 @@ error).
|
||||
|
||||
|
||||
<div id="1990_dds">
|
||||
## [1990/dds](1990/dds/dds.c) ([index.html](1990/dds/index.html]))
|
||||
# [1990/dds](1990/dds/index.html)
|
||||
## Source code: [dds.c](1990/dds/dds.c)
|
||||
</div>
|
||||
|
||||
[Yusuke](#yusuke) and [Cody](#cody) in conjunction fixed this for modern systems (both fixed a
|
||||
@@ -1198,7 +1240,8 @@ Cody also made this use `fgets(3)`.
|
||||
|
||||
|
||||
<div id="1990_dg">
|
||||
## [1990/dg](1990/dg/dg.c) ([index.html](1990/dg/index.html]))
|
||||
# [1990/dg](1990/dg/index.html)
|
||||
## Source code: [dg.c](1990/dg/dg.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this for modern systems. There were two problems to be resolved.
|
||||
@@ -1223,7 +1266,8 @@ Cody also added the [try.sh](1990/dg/try.sh) script.
|
||||
|
||||
|
||||
<div id="1990_jaw">
|
||||
## [1990/jaw](1990/jaw/jaw.c) ([index.html](1990/jaw/index.html]))
|
||||
# [1990/jaw](1990/jaw/index.html)
|
||||
## Source code: [jaw.c](1990/jaw/jaw.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed the script to work properly in modern environments including writing
|
||||
@@ -1242,7 +1286,8 @@ input but which now works.
|
||||
|
||||
|
||||
<div id="1990_pjr">
|
||||
## [1990/pjr](1990/pjr/pjr.c) ([index.html](1990/pjr/index.html]))
|
||||
# [1990/pjr](1990/pjr/index.html)
|
||||
## Source code: [pjr.c](1990/pjr/pjr.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [alt code](1990/pjr/pjr.alt.c) which was suggested by the judges
|
||||
@@ -1251,7 +1296,8 @@ something else and is recommended by the author as well.
|
||||
|
||||
|
||||
<div id="1990_scjones">
|
||||
## [1990/scjones](1990/scjones/scjones.c) ([index.html](1990/scjones/index.html]))
|
||||
# [1990/scjones](1990/scjones/index.html)
|
||||
## Source code: [scjones.c](1990/scjones/scjones.c)
|
||||
</div>
|
||||
|
||||
[Yusuke](#yusuke) suggested `-ansi` to get the entry to compile due to trigraphs and [Cody](#cody)
|
||||
@@ -1262,7 +1308,8 @@ entry does.
|
||||
|
||||
|
||||
<div id="1990_tbr">
|
||||
## [1990/tbr](1990/tbr/tbr.c) ([index.html](1990/tbr/index.html]))
|
||||
# [1990/tbr](1990/tbr/index.html)
|
||||
## Source code: [tbr.c](1990/tbr/tbr.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to work with modern compilers; `exit(3)` returns void but the
|
||||
@@ -1282,7 +1329,8 @@ author intended, but more compact.
|
||||
|
||||
|
||||
<div id="1990_theorem">
|
||||
## [1990/theorem](1990/theorem/theorem.c) ([index.html](1990/theorem/index.html]))
|
||||
# [1990/theorem](1990/theorem/index.html)
|
||||
## Source code: [theorem.c](1990/theorem/theorem.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to compile with modern systems.
|
||||
@@ -1325,7 +1373,8 @@ incomplete).
|
||||
|
||||
|
||||
<div id="1990_stig">
|
||||
## [1990/stig](1990/stig/stig.c) ([index.html](1990/stig/index.html))
|
||||
# [1990/stig](1990/stig/index.html)
|
||||
## Source code: [stig.c](1990/stig/stig.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed the paths in the Makefile so that this would build in Linux (it
|
||||
@@ -1336,7 +1385,8 @@ He also changed the Makefile to use `bash` not `zsh` as not all systems have
|
||||
|
||||
|
||||
<div id="1990_westley">
|
||||
## [1990/westley](1990/westley/westley.c) ([index.html](1990/westley/index.html]))
|
||||
# [1990/westley](1990/westley/index.html)
|
||||
## Source code: [westley.c](1990/westley/westley.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this for modern systems. It had `1s` in places for a `short
|
||||
@@ -1357,12 +1407,13 @@ original code.
|
||||
|
||||
|
||||
<div id="1991">
|
||||
# 1991
|
||||
# [1991](1991/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1991_ant">
|
||||
## [1991/ant](1991/ant/ant.c) ([index.html](1991/ant/index.html]))
|
||||
# [1991/ant](1991/ant/index.html)
|
||||
## Source code: [ant.c](1991/ant/ant.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added [alt code](1991/ant/ant.alt.c) that will be a bit easier to use for
|
||||
@@ -1379,7 +1430,8 @@ The other keys were left unchanged.
|
||||
|
||||
|
||||
<div id="1991_brnstnd">
|
||||
## [1991/brnstnd](1991/brnstnd/brnstnd.c) ([index.html](1991/brnstnd/index.html]))
|
||||
# [1991/brnstnd](1991/brnstnd/index.html)
|
||||
## Source code: [brnstnd.c](1991/brnstnd/brnstnd.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this for modern systems. There were two invalid operands to binary
|
||||
@@ -1397,7 +1449,8 @@ Cody also added the [try.sh](1991/brnstnd/try.sh) script and
|
||||
|
||||
|
||||
<div id="1991_buzzard">
|
||||
## [1991/buzzard](1991/buzzard/buzzard.c) ([index.html](1991/buzzard/index.html]))
|
||||
# [1991/buzzard](1991/buzzard/index.html)
|
||||
## Source code: [buzzard.c](1991/buzzard/buzzard.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this so that the coordinates being specified would not crash the
|
||||
@@ -1417,7 +1470,8 @@ completing or killing the program.
|
||||
|
||||
|
||||
<div id="1991_davidguy">
|
||||
## [1991/davidguy](1991/davidguy/davidguy.c) ([index.html](1991/davidguy/index.html]))
|
||||
# [1991/davidguy](1991/davidguy/index.html)
|
||||
## Source code: [davidguy.c](1991/davidguy/davidguy.c)
|
||||
</div>
|
||||
|
||||
As some systems like macOS can be particular about not declaring functions [Cody](#cody)
|
||||
@@ -1427,7 +1481,8 @@ declared first.
|
||||
|
||||
|
||||
<div id="1991_dds">
|
||||
## [1991/dds](1991/dds/dds.c) ([index.html](1991/dds/index.html]))
|
||||
# [1991/dds](1991/dds/index.html)
|
||||
## Source code: [dds.c](1991/dds/dds.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed a segfault that prevented this entry from working in any condition
|
||||
@@ -1558,7 +1613,8 @@ entry was fixed. It has not been done in all.
|
||||
|
||||
|
||||
<div id="1991_fine">
|
||||
## [1991/fine](1991/fine/fine.c) ([index.html](1991/fine/index.html))
|
||||
# [1991/fine](1991/fine/index.html)
|
||||
## Source code: [fine.c](1991/fine/fine.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) made it look much more like the original entry even after the fix that
|
||||
@@ -1583,7 +1639,8 @@ which ones? :-) )
|
||||
|
||||
|
||||
<div id="1991_rince">
|
||||
## [1991/rince](1991/rince/rince.c) ([index.html](1991/rince/index.html))
|
||||
# [1991/rince](1991/rince/index.html)
|
||||
## Source code: [rince.c](1991/rince/rince.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed it so that the messages that show if you won or lost will be seen
|
||||
@@ -1600,7 +1657,8 @@ the above fix was applied to these versions too.
|
||||
|
||||
|
||||
<div id="1991_westley">
|
||||
## [1991/westley](1991/westley/westley.c) ([index.html](1991/westley/index.html]))
|
||||
# [1991/westley](1991/westley/index.html)
|
||||
## Source code: [westley.c](1991/westley/westley.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed a segfault in this program which prevented it from working. The
|
||||
@@ -1624,12 +1682,13 @@ should have been removed.
|
||||
|
||||
|
||||
<div id="1992">
|
||||
# 1992
|
||||
# [1992](1992/index.html)
|
||||
</div>
|
||||
|
||||
|
||||
<div id="1992_adrian">
|
||||
## [1992/adrian](1992/adrian/adrian.c) ([index.html](1992/adrian/index.html]))
|
||||
# [1992/adrian](1992/adrian/index.html)
|
||||
## Source code: [adrian.c](1992/adrian/adrian.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed the code so that it will try opening the file the code was compiled
|
||||
@@ -1706,7 +1765,8 @@ generated.
|
||||
|
||||
|
||||
<div id="1992_albert">
|
||||
## [1992/albert](1992/albert/albert.c) ([index.html](1992/albert/index.html]))
|
||||
# [1992/albert](1992/albert/index.html)
|
||||
## Source code: [albert.c](1992/albert/albert.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to compile with modern systems. Note that in 1996 a bug fix was
|
||||
@@ -1722,7 +1782,8 @@ the alt code.
|
||||
|
||||
|
||||
<div id="1992_ant">
|
||||
## [1992/ant](1992/ant/ant.c) ([index.html](1992/ant/index.html]))
|
||||
# [1992/ant](1992/ant/index.html)
|
||||
## Source code: [ant.c](1992/ant/ant.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed the Makefile so that the program will actually work with it (or at
|
||||
@@ -1746,7 +1807,8 @@ Cody also added the [try.sh](1992/ant/try.sh) script.
|
||||
|
||||
|
||||
<div id="1992_buzzard.1">
|
||||
## [1992/buzzard.1](1992/buzzard.1/buzzard.1.c) ([index.html](1992/buzzard.1/index.html))
|
||||
# [1992/buzzard.1](1992/buzzard.1/index.html)
|
||||
## Source code: [buzzard.1.c](1992/buzzard.1/buzzard.1.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added a check for the right number of args, exiting 1 if not enough (2)
|
||||
@@ -1759,7 +1821,8 @@ commands that we suggested and some additional ones that he provide for some fun
|
||||
|
||||
|
||||
<div id="1992_buzzard.2">
|
||||
## [1992/buzzard.2](1992/buzzard.2/buzzard.2.c) ([index.html](1992/buzzard.2/index.html))
|
||||
# [1992/buzzard.2](1992/buzzard.2/index.html)
|
||||
## Source code: [buzzard.2.c](1992/buzzard.2/buzzard.2.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed the alt code to compile. The problem was it assumed that
|
||||
@@ -1771,7 +1834,8 @@ and its alt code.
|
||||
|
||||
|
||||
<div id="1992_gson">
|
||||
## [1992/gson](1992/gson/gson.c) ([index.html](1992/gson/index.html]))
|
||||
# [1992/gson](1992/gson/index.html)
|
||||
## Source code: [gson.c](1992/gson/gson.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed a crash that prevented this entry from working in some cases in some
|
||||
@@ -1793,20 +1857,22 @@ details if you're interested in trying to understand it (or fix?).
|
||||
|
||||
|
||||
<div id="1992_imc">
|
||||
## [1992/imc](1992/imc/imc.c) ([index.html](1992/imc/index.html]))
|
||||
# [1992/imc](1992/imc/index.html)
|
||||
## Source code: [imc.c](1992/imc/imc.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) provided the [try.sh](1992/imc/try.sh) script.
|
||||
|
||||
The original code, [imc.orig.c](1992/imc/imc.orig.c), assumed that `exit(3)`
|
||||
returned a value but this will cause problems where `exit(3)` returns void. The
|
||||
returned a value but this will cause problems where `exit(3)` returns `void`. The
|
||||
source code was modified to avoid this problem but like Cody did with other fixes
|
||||
he made this more like the original by redefining `exit` to use the comma
|
||||
operator so that it could be used in binary expressions.
|
||||
|
||||
|
||||
<div id="1992_kivinen">
|
||||
## [1992/kivinen](1992/kivinen/kivinen.c) ([index.html](1992/kivinen/index.html]))
|
||||
# [1992/kivinen](1992/kivinen/index.html)
|
||||
## Source code: [kivinen.c](1992/kivinen/kivinen.c)
|
||||
</div>
|
||||
|
||||
It was observed that on modern systems this goes much too quick. [Yusuke](#yusuke) created
|
||||
@@ -1834,7 +1900,8 @@ it moves towards the right but if you click the mouse it goes back.
|
||||
|
||||
|
||||
<div id="1992_lush">
|
||||
## [1992/lush](1992/lush/lush.c) ([index.html](1992/lush/index.html]))
|
||||
# [1992/lush](1992/lush/index.html)
|
||||
## Source code: [lush.c](1992/lush/lush.c)
|
||||
</div>
|
||||
|
||||
[Yusuke](#yusuke) supplied a patch which makes this work with gcc. Due to how it works (see
|
||||
@@ -1850,14 +1917,16 @@ will compile fine but it won't work). See [bugs.html](bugs.html) for details.
|
||||
|
||||
|
||||
<div id="1992_marangon">
|
||||
## [1992/marangon](1992/marangon/marangon.c) ([index.html](1992/marangon/index.html))
|
||||
# [1992/marangon](1992/marangon/index.html)
|
||||
## Source code: [marangon.c](1992/marangon/marangon.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) made this more portable by changing the `void main()` to be `int main()`.
|
||||
|
||||
|
||||
<div id="1992_nathan">
|
||||
## [1992/nathan](1992/nathan/nathan.c) ([index.html](1992/nathan/index.html))
|
||||
# [1992/nathan](1992/nathan/index.html)
|
||||
## Source code: [nathan.c](1992/nathan/nathan.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the original file back as it was deemed that the export restrictions
|
||||
@@ -1873,7 +1942,8 @@ that we suggested as well as one he provided.
|
||||
|
||||
|
||||
<div id="1992_vern">
|
||||
## [1992/vern](1992/vern/vern.c) ([index.html](1992/vern/index.html]))
|
||||
# [1992/vern](1992/vern/index.html)
|
||||
## Source code: [vern.c](1992/vern/vern.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed an infinite loop if one were to input numbers < `0` or > `077`. The
|
||||
@@ -1887,9 +1957,13 @@ new char arrays (always cleared in the beginning of the loop) and then using
|
||||
`strtol(3)` with a base of `8` (as it's octal), checking for `< 0 || > 077` on
|
||||
both numbers (using `"%o %o"` does not solve the problem).
|
||||
|
||||
This was deemed a problem to fix as the Judges' remarks hinted that this was how
|
||||
it used to be.
|
||||
|
||||
|
||||
<div id="1992_westley">
|
||||
## [1992/westley](1992/westley/westley.c) ([index.html](1992/westley/index.html]))
|
||||
# [1992/westley](1992/westley/index.html)
|
||||
## Source code: [westley.c](1992/westley/westley.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) fixed this to work for clang by changing the third and fourth arg of
|
||||
|
||||
Reference in new issue
Block a user