From 04f6b532eeb93c0f21ce5bcf011c1845baf505e9 Mon Sep 17 00:00:00 2001 From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com> Date: Thu, 18 Apr 2024 05:53:54 -0700 Subject: [PATCH] Improve links in thanks for 1993 and 1994 --- thanks-for-help.html | 96 +++++++++++++++++++++++++++----------------- thanks-for-help.md | 80 +++++++++++++++++++++++------------- 2 files changed, 110 insertions(+), 66 deletions(-) diff --git a/thanks-for-help.html b/thanks-for-help.html index e9409ca06..69cec58fd 100644 --- a/thanks-for-help.html +++ b/thanks-for-help.html @@ -1541,33 +1541,38 @@ world or just the args (2). And not that we need the help or anything for this :-) but we encourage you to try the original without two args :-)

-

1993

+

1993

-

1993/ant (index.html)

+

1993/ant

+

Source code: ant.c

Cody added the try.sh script and a data file, ants.txt, full of ants for the script.

-

1993/cmills (index.html)

+

1993/cmills

+

Source code: cmills.c

Yusuke suggested that with modern systems this goes too fast so he added a call to usleep(3) in a patch he made. Cody made it configurable at compilation by using a macro. This is in the alt version which is the recommended one to try first.

-

1993/dgibson (index.html)

+

1993/dgibson

+

Source code: dgibson.c

Cody fixed the dgibson.sh script to work which assumed that . is in the path.

Cody also added the try.sh script which runs the above mentioned script on all the data files.

-

1993/ejb (index.html)

+

1993/ejb

+

Source code: ejb.c

Cody added the try.sh script.

-

1993/jonth (index.html)

+

1993/jonth

+

Source code: jonth.c

Both Cody and Yusuke fixed this so that it will work with modern systems. Yusuke provided some fixes of the X code and Cody fixed the C pre-processor directives @@ -1578,12 +1583,14 @@ so that it would compile. It used to be that you could get away with code like:< case but that’s no longer the case so the offending lines had #define prepended to them.

-

1993/leo (index.html)

+

1993/leo

+

Source code: leo.c

Cody fixed this to work with modern compilers. This involved different header files for functions.

-

1993/lmfjyh (index.html)

+

1993/lmfjyh

+

Source code: lmfjyh.c

Cody added an alternate version which does what the program did @@ -1593,9 +1600,11 @@ the alternate version, not the actual entry.

would be compiled if gcc < 2.3.3) whether or not compilation succeeds (which is highly unlikely).

-

1993/plummer (index.html)

+

1993/plummer

+

Source code: plummer.c

-

Cody added check for two args.

+

Cody added check for two args during a time that this was considered a +bug to fix.

Cody also added an alternate version which uses usleep(3) so you can see what is happening with faster systems. This version also checks for two args and it is the one we recommend one try first. See the @@ -1605,7 +1614,8 @@ index.html files for details.

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).

-

1993/rince (index.html)

+

1993/rince

+

Source code: rince.c

Yusuke supplied a patch to get this to work in modern systems. This fix also applies the compatibility issue of select(2) described in the index.html file.

@@ -1617,11 +1627,13 @@ users. The slowing down was based on our suggestion that it might be desired to slow down but Cody did it in such a way that makes it easy to configure at compile time. See the index.html for details.

-

1993/schnitzi (index.html)

+

1993/schnitzi

+

Source code: schnitzi.c

Cody made this use fgets(3) not gets(3).

-

1993/vanb (index.html)

+

1993/vanb

+

Source code: vanb.c

Cody fixed this to work with clang. The problem was that the third arg to main() was not a char **. InsteadO5()(which wasmain()via-DO5=main`) is now @@ -1642,10 +1654,11 @@ work).

this code. Other code is also described there.

Cody also added the try.sh script.

-

1994

+

1994

-

1994/dodsond2 (index.html)

+

1994/dodsond2

+

Source code: 1994/dodsond2

Cody fixed an infinite loop that could happen when you shoot an arrow and end up having no arrows, thus making one force quit the game. The problem @@ -1672,13 +1685,14 @@ Now the counters are reset. The way this bug was fixed is that there is now a counter for how many you have found and how many you shot in addition to the two that already existed, how many you had and how many were stolen.

-

1994/horton (index.html)

+

1994/horton

+

Source code: 1994/horton

-

Cody fixed this to check that four args were specified. With the use of the C -pre-processor macro and inclusion of stdlib.h in the Makefile the layout of the -source is exactly the same column width and no additional lines were added. This -was done during one of the times where this was changed to bug to fix status, for -better or worse.

+

Cody fixed this to check that four args were specified (at a time it +was considered a bug to fix). With the use of the C pre-processor macro and +inclusion of stdlib.h in the Makefile the layout of the source is exactly the +same column width and no additional lines were added. This was done during one +of the times where this was changed to bug to fix status, for better or worse.

Cody also fixed the Makefile which was causing alt code to be compiled when it shouldn’t be.

Cody also added the scripts try.sh and @@ -1691,7 +1705,8 @@ shorter PDF file, newsletter was found on the Internet Wayback Machine and the article was extracted as a PDF in the macOS Preview.app (File -> Print feature).

-

1994/imc (index.html)

+

1994/imc

+

Source code: imc.c

Cody added the try.sh script.

Cody also added inclusion of unistd.h for getpid(2). While strictly speaking @@ -1699,7 +1714,8 @@ this was not necessary (in multiple systems) it can sometimes be a problem and as it was noticed it was changed (the only case this was done except in the entries that actually did not work because of missing or incorrect prototypes).

-

1994/ldb (index.html)

+

1994/ldb

+

Source code: ldb.c

Cody fixed this so it would compile and work with modern compilers. The problem was that srand() returns void but it was used in a || expression. Thus the @@ -1719,7 +1735,8 @@ than 231 in length if the program chooses that line it might print the first 231 characters or it might print (up to) the next 231 characters and so on.

Cody also added the try.sh script.

-

1994/schnitzi (index.html)

+

1994/schnitzi

+

Source code: schnitzi.c

Cody added two alt versions, one which uses fgets() but when fed its own source code cannot @@ -1738,7 +1755,8 @@ now there is more important work to do so that the next contest can run.

Cody also added the try.sh and try.alt.sh scripts.

-

1994/shapiro (index.html)

+

1994/shapiro

+

Source code: shapiro.c

Cody fixed a bug on systems where EOF != -1. The problem is that getc() and the related functions do not return -1 on EOF or error but rather EOF. @@ -1748,11 +1766,13 @@ where EOF != -1 it could result in an infinite loop.

For an interesting problem that occurred here and what was done to solve it, check the bugs.html file.

-

1994/smr (index.html)

+

1994/smr

+

Source code: smr.c

Cody added the try.sh script.

-

1994/tvr (index.html)

+

1994/tvr

+

Source code: 1994/tvr

Cody added the try scripts, four total, colour and black and white pairs for the original entry and the alt code. These scripts are @@ -1767,7 +1787,8 @@ to use fgets() and the inclusion of stdio.h had to be more like the original entry this was done in the Makefile. The alt code was also changed to use fgets(3).

-

1994/weisberg (index.html)

+

1994/weisberg

+

Source code: weisberg.c

Cody changed the Makefile to make this program more user friendly and easier to use with other tools as well by making the program output not a space after each @@ -1779,7 +1800,8 @@ lines of the weisberg, feeding it to primes(1), showin primes. It only does the reversed output because the program actually prints primes.

-

1994/westley (index.html)

+

1994/westley

+

Source code: westley.c

Cody converted the spoiler compiler options (provided by the author) to be compiler commands and added a script try.sh to @@ -1834,7 +1856,7 @@ added.

Cody added the try.sh script.

-

1995/leo (index.html)

+

1995/leo (index.html)

Cody added the try.sh script.

At our change in how to deal with spoilers, Cody also uudecoded the spoiler provided @@ -1851,7 +1873,7 @@ calls which has the four args.

Cody added the try.sh script.

-

1995/schnitzi (index.html)

+

1995/schnitzi (index.html)

Cody added the try.sh script.

@@ -1920,7 +1942,7 @@ either different output or the same output that we briefly pointed out.

Cody added the try.sh script.

-

1996/jonth (index.html)

+

1996/jonth (index.html)

Cody fixed this to not segfault under macOS. The problem was that the function pointer w, which points to XCreateWindow(), did not specify the parameters of @@ -1955,7 +1977,7 @@ loop so having it in a script is less desired).

method suggested for SunOS rather than having to update the Makefile manually or running a more complicated command: now one can just run make.

-

1996/westley (index.html)

+

1996/westley (index.html)

Cody fixed a segfault in this entry as well as it displaying environmental variables. Although the scripts showed correct output, it somewhat lessened the @@ -2063,7 +2085,7 @@ code look like the original with just an extra arg.

Cody also added the try.sh script to show the output of some of the expressions that we selected.

-

1998/schnitzi (index.html)

+

1998/schnitzi (index.html)

Cody fixed invalid data types which prevented this entry from working, causing a segfault. This showed itself in two parts which required two fixes, one for @@ -2242,7 +2264,7 @@ more confusing (even if not confusing).

Cody made this more portable by changing the void main to int main.

Cody also added the try.sh script.

-

2000/rince (index.html)

+

2000/rince (index.html)

Cody added the try.sh script.

@@ -2508,7 +2530,7 @@ the author. The other problems are documented so were not fixed. See index.html for details.

Cody also added the try.sh script.

-

2001/westley (index.html)

+

2001/westley (index.html)

Cody added the script try.sh to automate a heap of commands that we, the IOCCC judges, suggested, as well as some additional ones that he @@ -2651,7 +2673,7 @@ chose the word IOCCC instead of AAA).

Cody added the try.sh script.

-

2004/schnitzi (index.html)

+

2004/schnitzi (index.html)

Cody made this use fgets(3).

He also changed the time factor in the data files as the animations went too diff --git a/thanks-for-help.md b/thanks-for-help.md index 8b3140296..bccd1f295 100644 --- a/thanks-for-help.md +++ b/thanks-for-help.md @@ -2009,12 +2009,13 @@ encourage you to try the original without two args :-)

-# 1993 +# [1993](1993/index.html)
-## [1993/ant](1993/ant/ant.c) ([index.html](1993/ant/index.html])) +# [1993/ant](1993/ant/index.html) +## Source code: [ant.c](1993/ant/ant.c)
[Cody](#cody) added the [try.sh](1993/ant/try.sh) script and a data file, @@ -2022,7 +2023,8 @@ encourage you to try the original without two args :-)
-## [1993/cmills](1993/cmills/cmills.c) ([index.html](1993/cmills/index.html])) +# [1993/cmills](1993/cmills/index.html) +## Source code: [cmills.c](1993/cmills/cmills.c)
[Yusuke](#yusuke) suggested that with modern systems this goes too fast so he added a call @@ -2032,7 +2034,8 @@ first.
-## [1993/dgibson](1993/dgibson/dgibson.c) ([index.html](1993/dgibson/index.html])) +# [1993/dgibson](1993/dgibson/index.html) +## Source code: [dgibson.c](1993/dgibson/dgibson.c)
[Cody](#cody) fixed the [dgibson.sh](1993/dgibson/dgibson.sh) script to work @@ -2043,14 +2046,16 @@ mentioned script on all the data files.
-## [1993/ejb](1993/ejb/ejb.c) ([index.html](1993/ejb/index.html])) +# [1993/ejb](1993/ejb/index.html) +## Source code: [ejb.c](1993/ejb/ejb.c)
[Cody](#cody) added the [try.sh](1993/ejb/try.sh) script.
-## [1993/jonth](1993/jonth/jonth.c) ([index.html](1993/jonth/index.html])) +# [1993/jonth](1993/jonth/index.html) +## Source code: [jonth.c](1993/jonth/jonth.c)
Both [Cody](#cody) and [Yusuke](#yusuke) fixed this so that it will work with modern systems. Yusuke @@ -2068,7 +2073,8 @@ prepended to them.
-## [1993/leo](1993/leo/leo.c) ([index.html](1993/leo/index.html])) +# [1993/leo](1993/leo/index.html) +## Source code: [leo.c](1993/leo/leo.c)
[Cody](#cody) fixed this to work with modern compilers. This involved different header @@ -2076,7 +2082,8 @@ files for functions.
-## [1993/lmfjyh](1993/lmfjyh/lmfjyh.c) ([index.html](1993/lmfjyh/index.html])) +# [1993/lmfjyh](1993/lmfjyh/index.html) +## Source code: [lmfjyh.c](1993/lmfjyh/lmfjyh.c)
[Cody](#cody) added an [alternate @@ -2090,10 +2097,12 @@ highly unlikely).
-## [1993/plummer](1993/plummer/plummer.c) ([index.html](1993/plummer/index.html])) +# [1993/plummer](1993/plummer/index.html) +## Source code: [plummer.c](1993/plummer/plummer.c)
-[Cody](#cody) added check for two args. +[Cody](#cody) added check for two args during a time that this was considered a +bug to fix. Cody also added an [alternate version](1993/plummer/plummer.alt.c) which uses `usleep(3)` so you can see what is happening with faster systems. This version @@ -2107,7 +2116,8 @@ of the alt one allowing one to change the amount to sleep).
-## [1993/rince](1993/rince/rince.c) ([index.html](1993/rince/index.html])) +# [1993/rince](1993/rince/index.html) +## Source code: [rince.c](1993/rince/rince.c)
[Yusuke](#yusuke) supplied a patch to get this to work in modern systems. This fix also @@ -2124,14 +2134,16 @@ compile time. See the index.html for details.
-## [1993/schnitzi](1993/schnitzi/schnitzi.c) ([index.html](1993/schnitzi/index.html])) +# [1993/schnitzi](1993/schnitzi/index.html) +## Source code: [schnitzi.c](1993/schnitzi/schnitzi.c)
[Cody](#cody) made this use `fgets(3)` not `gets(3)`.
-## [1993/vanb](1993/vanb/vanb.c) ([index.html](1993/vanb/index.html])) +# [1993/vanb](1993/vanb/index.html) +## Source code: [vanb.c](1993/vanb/vanb.c)
[Cody](#cody) fixed this to work with clang. The problem was that the third arg to main() @@ -2164,12 +2176,13 @@ Cody also added the [try.sh](1993/vanb/try.sh) script.
-# 1994 +# [1994](1994/index.html)
-## [1994/dodsond2](1994/dodsond2/dodsond2.c) ([index.html](1994/dodsond2/index.html)) +# [1994/dodsond2](1994/dodsond2/index.html) +## Source code: [1994/dodsond2](1994/dodsond2/dodsond2.c)
[Cody](#cody) fixed an infinite loop that could happen when you shoot an arrow @@ -2202,14 +2215,15 @@ that already existed, how many you had and how many were stolen.
-## [1994/horton](1994/horton/horton.c) ([index.html](1994/horton/index.html)) +# [1994/horton](1994/horton/index.html) +## Source code: [1994/horton](1994/horton/horton.c)
-[Cody](#cody) fixed this to check that four args were specified. With the use of the C -pre-processor macro and inclusion of `stdlib.h` in the Makefile the layout of the -source is exactly the same column width and no additional lines were added. This -was done during one of the times where this was changed to bug to fix status, for -better or worse. +[Cody](#cody) fixed this to check that four args were specified (at a time it +was considered a bug to fix). With the use of the C pre-processor macro and +inclusion of `stdlib.h` in the Makefile the layout of the source is exactly the +same column width and no additional lines were added. This was done during one +of the times where this was changed to bug to fix status, for better or worse. Cody also fixed the Makefile which was causing alt code to be compiled when it shouldn't be. @@ -2227,7 +2241,8 @@ extracted as a PDF in the macOS `Preview.app` (`File -> Print` feature).
-## [1994/imc](1994/imc/imc.c) ([index.html](1994/imc/index.html])) +# [1994/imc](1994/imc/index.html) +## Source code: [imc.c](1994/imc/imc.c)
[Cody](#cody) added the [try.sh](1994/imc/try.sh) script. @@ -2239,7 +2254,8 @@ entries that actually did not work because of missing or incorrect prototypes).
-## [1994/ldb](1994/ldb/ldb.c) ([index.html](1994/ldb/index.html])) +# [1994/ldb](1994/ldb/index.html) +## Source code: [ldb.c](1994/ldb/ldb.c)
[Cody](#cody) fixed this so it would compile and work with modern compilers. The problem @@ -2265,7 +2281,8 @@ Cody also added the [try.sh](1994/ldb/try.sh) script.
-## [1994/schnitzi](1994/schnitzi/schnitzi.c) ([index.html](1994/schnitzi/index.html])) +# [1994/schnitzi](1994/schnitzi/index.html) +## Source code: [schnitzi.c](1994/schnitzi/schnitzi.c)
[Cody](#cody) added two alt versions, [one which uses @@ -2289,7 +2306,8 @@ Cody also added the [try.sh](1994/schnitzi/try.sh) and
-## [1994/shapiro](1994/shapiro/shapiro.c) ([index.html](1994/shapiro/index.html])) +# [1994/shapiro](1994/shapiro/index.html) +## Source code: [shapiro.c](1994/shapiro/shapiro.c)
[Cody](#cody) fixed a bug on systems where `EOF != -1`. The problem is that `getc()` and @@ -2303,14 +2321,16 @@ check the [bugs.html](bugs.html) file.
-## [1994/smr](1994/smr/smr.c) ([index.html](1994/smr/index.html])) +# [1994/smr](1994/smr/index.html) +## Source code: [smr.c](1994/smr/smr.c)
[Cody](#cody) added the [try.sh](1994/smr/try.sh) script.
-## [1994/tvr](1994/tvr/tvr.c) ([index.html](1994/tvr/index.html])) +# [1994/tvr](1994/tvr/index.html) +## Source code: [1994/tvr](1994/tvr/tvr.c)
[Cody](#cody) added the try scripts, four total, colour and black and white @@ -2329,7 +2349,8 @@ also changed to use `fgets(3)`.
-## [1994/weisberg](1994/weisberg/weisberg.c) ([index.html](1994/weisberg/index.html])) +# [1994/weisberg](1994/weisberg/index.html) +## Source code: [weisberg.c](1994/weisberg/weisberg.c)
[Cody](#cody) changed the Makefile to make this program more user friendly and easier to @@ -2345,7 +2366,8 @@ primes.
-## [1994/westley](1994/westley/westley.c) ([index.html](1994/westley/index.html])) +# [1994/westley](1994/westley/index.html) +## Source code: [westley.c](1994/westley/westley.c)
[Cody](#cody) converted the spoiler compiler options (provided by the author) to be