From 5b647d7af1d0ae42535d0b9c7b425d3dd3df8aaa Mon Sep 17 00:00:00 2001 From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com> Date: Sat, 25 May 2024 09:15:19 -0700 Subject: [PATCH 01/10] Remove outdated bug status in 1996/august I fixed the problem of it not working with some compilers/systems ages ago but the README.md file still had: STATUS: doesn't work with some compilers - please provide alternative code or fix for more compilers Rebuilt index.html. --- 1996/august/README.md | 11 ----------- 1996/august/index.html | 4 ---- 2 files changed, 15 deletions(-) diff --git a/1996/august/README.md b/1996/august/README.md index 54b91b789..0b341fc1f 100644 --- a/1996/august/README.md +++ b/1996/august/README.md @@ -5,17 +5,6 @@ ``` -### Bugs and (Mis)features: - -The current status of this entry is: - -``` - STATUS: doesn't work with some compilers - please provide alternative code or fix for more compilers -``` - -For more detailed information see [1996/august in bugs.html](../../bugs.html#1996_august). - - ## To use: ``` diff --git a/1996/august/index.html b/1996/august/index.html index 0d9b7185b..d335c74df 100644 --- a/1996/august/index.html +++ b/1996/august/index.html @@ -397,10 +397,6 @@ Location: SE - Kingdom of Sweden (
make all
-The current status of this entry is:
- STATUS: doesn't work with some compilers - please provide alternative code or fix for more compilers
-For more detailed information see 1996/august in bugs.html.
cat august.c test.oc | ./august > test.oo
./august < test.oo
From e146d54d874bf521b8f5f9d813c5571117b72a44 Mon Sep 17 00:00:00 2001
From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com>
Date: Sat, 25 May 2024 09:17:09 -0700
Subject: [PATCH 02/10] Fix format in 2020/kurdyukov4/README.md
Rebuilt index.html.
---
2020/kurdyukov4/README.md | 2 +-
2020/kurdyukov4/index.html | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/2020/kurdyukov4/README.md b/2020/kurdyukov4/README.md
index 8fc86240c..d74f0f688 100644
--- a/2020/kurdyukov4/README.md
+++ b/2020/kurdyukov4/README.md
@@ -62,7 +62,7 @@ Example:
Try using the same random seed and varying the context size.
BTW: what on Middle-earth is `lámatyávë`? It's Quenya, one of the languages of
-the Elves in Tolkien's Legendarium. It means sound taste (plural is lámatyáver)
+the Elves in Tolkien's Legendarium. It means sound taste (plural is `lámatyáver`)
and it refers to phonaesthesia - in other words, it refers to the pleasure of
sound and form of words. It's discussed in [Morgoth's
Ring](https://en.wikipedia.org/wiki/Morgoth%27s_Ring), volume X of [History of
diff --git a/2020/kurdyukov4/index.html b/2020/kurdyukov4/index.html
index 4d698d2e8..f8e165b4f 100644
--- a/2020/kurdyukov4/index.html
+++ b/2020/kurdyukov4/index.html
@@ -426,7 +426,7 @@ Example:
Try using the same random seed and varying the context size.
BTW: what on Middle-earth is lámatyávë? It’s Quenya, one of the languages of
-the Elves in Tolkien’s Legendarium. It means sound taste (plural is lámatyáver)
+the Elves in Tolkien’s Legendarium. It means sound taste (plural is lámatyáver)
and it refers to phonaesthesia - in other words, it refers to the pleasure of
sound and form of words. It’s discussed in Morgoth’s
Ring, volume X of History of
From d893c590e38082d7a691a95d9bd3b16703ec2b0d Mon Sep 17 00:00:00 2001
From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com>
Date: Sat, 25 May 2024 09:18:14 -0700
Subject: [PATCH 03/10] Minor fixes and improvements in thanks file
For each year it now shows which IOCCC it was. In other words for 1984
the link title is now:
1984 - The 1st IOCCC
and 1985 is:
1985 - The 2nd IOCCC
and 1986 is:
1986 - The 3rd IOCCC
and so on up to 2020 which is:
2020 - The 27th IOCCC
This helps it stand out better and it shows which contest it was.
There were a few other fixes. This edit does NOT check further years
from yesterday's commit 2647827d94a48d89cd70c5dfb387d32fb9127bec and it
is possible I won't do more years until another day (though I started
1996 but nothing needed to be fixed, I think).
Other minor fixes in formatting were also made.
Rebuilt thanks-for-help.html.
---
thanks-for-help.html | 92 +++++++++++++++++++++++---------------------
thanks-for-help.md | 92 +++++++++++++++++++++++---------------------
2 files changed, 96 insertions(+), 88 deletions(-)
diff --git a/thanks-for-help.html b/thanks-for-help.html
index 38e237d1c..ba14dafc5 100644
--- a/thanks-for-help.html
+++ b/thanks-for-help.html
@@ -401,7 +401,7 @@ on an IOCCC entry by entry basis.
main() having only one arg.
Cody also added the try.sh and try.alt.sh scripts.
gcc - but it still required -traditional-cpp
There might have been other changes as well.
Cody also added to the Makefile -include stdio.h in the nowadays very
unlikely(?) but nevertheless suggested case that putchar(3) is not available.
Cody also changed the ints to be float as that’s what they are printed as:
not strictly necessary but nonetheless more correct, even if not warned against.
The compile.sh script allows one to specify the compiler with the CC
environmental variable; see the index.html for details.
Cody also added the try.sh script.
Cody also fixed the make clobber rule where a file was left lying about when it should have been removed.
Cody 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.
Thus Cody’s fix applies to the original entry. The problems were that malloc.h
-is not the correct header file now (at least in some systems?) and a non-void
+is not the correct header file now (at least in some systems) and a non-void
(implicit int) function returning without a value. That function was changed to
return void.
Cody also added the try.sh and @@ -1833,7 +1833,7 @@ 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 :-)
Cody also added the try.sh script.
Cody also added the try.sh script.
Cody fixed a segfault in this program that prevented it from working right and -also fixed an infinite loop in the try commands.
+also fixed an infinite loop in the try commands. This infinite loop prevented it +from working with some systems or compilers which we noted a long time ago.The problem with the infinite loop is that the file august.oc had to have
lines starting with # removed and it was not being done. After this is done
with say sed(1) (like sed -i'' '/^#/d' august.oc which has been added to
@@ -2227,18 +2228,16 @@ but he missed that Yusuke added a’…’ after the result which made him think
the fix was wrong.
Cody also made the recommended change of the author to make it so that each number is printed on a line by itself rather than having a long string of -numbers on the same line. This was not put in an alternate version but perhaps -it should be.
+numbers on the same line.Cody also added the try.sh script.
Cody provided an alternate version which uses
-usleep() in between writing the output to make it easier to see what is going
-on with faster systems and importantly also for those who are sensitive to text
-flashing by rapidly (it affects him too but he also thinks it moves too fast
-nowadays anyway). We recommend that you try the alternate version first due to
+usleep() in between writing the output to make it easier to see what it looked
+like back in 1996 with modern systems and importantly also for those who are sensitive to text
+flashing by rapidly. We recommend that you try the alternate version first due to
these reasons.
Also, to fix any potential problem with displaying in GitHub the scripts
provided by the author, Cody added ‘.sh’ to the clock[1-3].sh scripts.
return 1).
Cody also added the try.sh script to try out a few commands that we recommended.
And although the scripts do chmod +x on the source code (see the index.html for
details) the source code is now executable by default.
cc -E.
vik2.possible.cat.death.c!) __FILE__
just to make it a bit easier to compile.
ints but this is no longe
toledo3.alt.c, based on the author’s remarks.
We’re not able to test this.
stdout needs to be set to binary mode.
sphere-tracing.pdf in case the link
eventually dies.
He also added the try.sh script.
y or Y.
diff showing differences when it
shouldn’t) and adding the ioccc.txt file.
Cody also added from 2019/mills the text file -Shakespeare.txt as we are considering to -have each entry have a tarball with the entry by itself.
-Also, to explain the confusing to most people award, Cody gave a quick
-translation of lámatyávë, which comes from History of Middle-earth [HoMe],
-volume X, Morgoth’s Ring, which he also has (and which is part of the 12 volume
-set by the late Christopher Tolkien, son and literary executor and heir to
-J.R.R. Tolkien).
Also, as a fellow Tolkienist, to explain the confusing (to most people) award
+title, Cody gave a quick translation of lámatyávë, which comes from Morgoth’s
+Ring, volume X of the 12
+volume History of
+Middle-earth (known
+to us Tolkienists as HoMe), which he naturally :-) has, by the late and great
+Christopher Tolkien, son
+and literary executor and heir to J.R.R.
+Tolkien.
A good number of the wining entries of the
+ A good number of the winning entries of the
IOCCC tested, identified and helped correct
and/or improve the write-ups of fellow IOCCC entries for the year that they won.
The list of those entries is too long to mention: nevertheless the IOCCC
@@ -4762,7 +4765,8 @@ inconsistent award titles in the README files and CSV file (that he generated
from the SQL file). Additionally Cody greatly improved the manifest of the winning entries and
checked that the generated html files, index.html and otherwise, look well and
-presentable.<img> to make images more responsive
+on smaller screens.
THANK YOU VERY MUCH for your extensive efforts in helping improve the IOCCC presentation of past IOCCC entries and fixing almost all past entries for modern systems!
diff --git a/thanks-for-help.md b/thanks-for-help.md index 26178c7bd..5a3d49af2 100644 --- a/thanks-for-help.md +++ b/thanks-for-help.md @@ -30,7 +30,7 @@ on an IOCCC entry by entry basis.atoiatoibreakbreakconstconstdodoelseelsefloatfloatgetcgetchypothypotintintjmp_bufjmp_bufkillcharkillcharlonglongmallocmallocnullptrnullptropenopenprintfprintfqsortqsortreturnreturnswitchswitchtruetrueunionunionvolatilevolatilewhilewhilexorxory0y0zlibzlibatoi"
-IS_FOR[b]="b is for break"
-IS_FOR[c]="c is for const"
-IS_FOR[d]="d is for do"
-IS_FOR[e]="e is for else"
-IS_FOR[f]="f is for float"
-IS_FOR[g]="g is for getc"
-IS_FOR[h]="h is for hypot"
-IS_FOR[i]="i is for int"
-IS_FOR[j]="j is for jmp_buf"
-IS_FOR[k]="k is for killchar"
-IS_FOR[l]="l is for long"
-IS_FOR[m]="m is for malloc"
-IS_FOR[n]="n is for nullptr"
-IS_FOR[o]="o is for open"
-IS_FOR[p]="p is for printf"
-IS_FOR[q]="q is for qsort"
-IS_FOR[r]="r is for return"
-IS_FOR[s]="s is for switch"
-IS_FOR[t]="t is for true"
-IS_FOR[u]="u is for union"
-IS_FOR[v]="v is for volatile"
-IS_FOR[w]="w is for while"
-IS_FOR[x]="x is for xor"
-IS_FOR[y]="y is for y0"
-IS_FOR[z]="z is for zlib"
+IS_FOR[a]="a is for atoi"
+IS_FOR[b]="b is for break"
+IS_FOR[c]="c is for const"
+IS_FOR[d]="d is for do"
+IS_FOR[e]="e is for else"
+IS_FOR[f]="f is for float"
+IS_FOR[g]="g is for getc"
+IS_FOR[h]="h is for hypot"
+IS_FOR[i]="i is for int"
+IS_FOR[j]="j is for jmp_buf"
+IS_FOR[k]="k is for killchar"
+IS_FOR[l]="l is for long"
+IS_FOR[m]="m is for malloc"
+IS_FOR[n]="n is for nullptr"
+IS_FOR[o]="o is for open"
+IS_FOR[p]="p is for printf"
+IS_FOR[q]="q is for qsort"
+IS_FOR[r]="r is for return"
+IS_FOR[s]="s is for switch"
+IS_FOR[t]="t is for true"
+IS_FOR[u]="u is for union"
+IS_FOR[v]="v is for volatile"
+IS_FOR[w]="w is for while"
+IS_FOR[x]="x is for xor"
+IS_FOR[y]="y is for y0"
+IS_FOR[z]="z is for zlib"
# clear options we will add to tools
#
From 743e21d7fb5dc170bfe91e5607441d0590aa21af Mon Sep 17 00:00:00 2001
From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com>
Date: Sun, 26 May 2024 16:29:09 -0700
Subject: [PATCH 05/10] Add FAQ 6.14 + minor updates to others
The new one is how to set tabstop (for viewing code) in vi(m).
Add to the mastodon FAQ a note that there is an app but it does not have
push notifications for posts by people you follow.
Minor typo fixes elsewhere.
---
faq.html | 24 ++++++++++++++++++++----
faq.md | 32 ++++++++++++++++++++++++++++----
2 files changed, 48 insertions(+), 8 deletions(-)
diff --git a/faq.html b/faq.html
index abf6e87dd..4f1f1940a 100644
--- a/faq.html
+++ b/faq.html
@@ -463,6 +463,7 @@ other inconsistencies with the original entry?
One day (1984 March 23 to be exact), Larry Bassel and I (Landon Curt -Noll) were working for National Semiconductor’s Genix porting group, we +Noll) were working for National Semiconductor’s Genix porting group, and we were both in our offices trying to fix some very broken code.
Larry had been trying to fix a bug in the classic Bourne shell (C code #defined
-to death to sort of look like Algol) and I had been working on the finger
-program from early BSD (a bug ridden finger implementation to be sure).
finger(1)
+program from early BSD (a bug ridden finger implementation to be sure).
We happened to both wander (at the same time) out to the hallway in Building 7C to clear our heads.
We began to compare notes: ‘You won’t believe the code I am trying to fix’.
@@ -795,7 +796,7 @@ and the tradition continues as the longest running contest on the Internet.Some years, such as 1997, 1999, 2002-2003, 2007-2010, 2016-2017, 2021-2023, no IOCCC was held.
While we try to hold the IOCCC every year, sometime the other demands on the IOCCC judges -so not permit us to hold a new IOCCC.
+do not permit us to hold a new IOCCC.The pause during the 2021-2023 period was due to the IOCCC judges developing tools to make is much more likely for the IOCCC to be held in a yearly basis later on.
While using Mastodon is free, the IOCCC judges are pleased to support the Fosstodon Hub.
+If you have a phone or tablet there is also an official app that you can get +from the App Store or whatever equivalent your device has. Please note that the +app does not at this time seem to give push notifications when someone you +follow posts something so you will have to check the IOCCC feed manually.