Commit Graph
404 Commits
Author SHA1 Message Date
Landon Curt Noll 09750f8899 release winning entries of IOCCC28 under the year 2024
Congratulations to:

* 2024/anders - Prize in sound coding - layered music generator
* 2024/burton - Prize in pentagrammatology - wordle hard mode solver
* 2024/cable1 - Prize in bot talk - LLM inference engine
* 2024/cable2 - Prize in murky waters - salmon recipe
* 2024/carlini - Prize in perfect timing - Intel 4004 emulation
* 2024/codemeow - Prize in tray planting - bonsai generator
* 2024/endoh1 - Prize in patient pointillism - slow ray tracer in CPP
* 2024/endoh2 - Prize in solid body physics - rotating rigid body simulation
* 2024/ferguson1 - Prize in diabolical logistics - Oregon trail pact with the devil
* 2024/ferguson2 - Prize in yil-tas - Navajo code talker translator
* 2024/howe - Nice accent eh-ward - mini vi
* 2024/kramer - Prize in linguistic arithmetic - natural language numerical calculator
* 2024/kurdyukov1 - Prize in phased periodicity - phase of the Moon
* 2024/kurdyukov2 - Prize in art restoration - JPEG artifact removal
* 2024/kurdyukov3 - Prize in virtual quietus - gaming VM and doom
* 2024/kurdyukov4 - Prize in embiggening - encode without literals
* 2024/maffiodo - Prize in creative interpretation - Jav\*script interpreter
* 2024/mills - Prize in ℤ₃ - Infocom v3 story interpreter
* 2024/stedolan - Best one liner - icon from MD5
* 2024/straadt - Prize in imitative rebooting - OpenRISC CPU and Linux
* 2024/tmarrec - Prize in cyclonic coding - 3D tornado simulation
* 2024/tompng - Prize in quasi bijection - vortex encryptor decryptor
* 2024/weaver - Sur prize - rickroll

Ran `make update` to perform the above.
 	new file:   2024/burton/.entry.json
2025-08-02 14:43:07 -07:00
Landon Curt Noll f29b37e49a improve HTML menus, add social.html, prep for IOCCC28 winners
Prepare for the winners of **IOCCC28**.

> However these are not the 2024 droids you are looking for.  :-)

The HTML menu (both JavaScript and non-JavaScript) has been updated.

The `Status -> Rules and guidelines' have been replaced with two
separate menus `Status -> IOCCC rules` and `Status -> IOCCC guidelines`.

Added a new top level `social.html` page: built from a new `social.md`.

Sorted rules for building specific web pages in the top level `Makefile`.
Added `make social` to make the `social.html` page from `social.md`.

The `bin/gen-top-html.sh` now is able to process a argument of **social**
to process the new top level `social.html` page.

Changed `bin/gen-top-html.sh` VERSION from "2.0.0 2025-03-13"
to "2.0.1 2025-07-25".

Below `About -> Home page` a new `About -> IOCCC social media` menu item
as added.

Because the menu change touched every HTML file, we changed the general
copyright date range for HTML files from "1984-2024" to "1984-2025"
due to the extensive changes made for **IOCCC28**.

Those markdown files that were modified in 2025 had their copyright date
range also changed from "1984-2024" to "1984-2025".

Rebuilt tarballs and sitemap due to the extensive HTML rebuilding.

Ran `make update` to perform the above.
2025-07-26 13:06:29 -07:00
Landon Curt Noll 141a76338f add run time info and output info for baruch/1990
We updated `bugs.md` and `1990/baruch/README.md` to record run times
and output lines for input values from 4 to 20.
2025-04-29 11:23:08 -07:00
Landon Curt Noll 54fdd0f39c processed John Dalbec's fix of 2000/dlowe
Updated `bugs.html` to reflect the fix of all known bugs in `2000/dlowe`.

Added thank you to John Dalbec in `thanks-for-help.md`.

Added processing of "%%REPO_TOP_URL%%" tokens to `bin/subst.default.sh`.

Updated `find-missing-links.sh` to not falsely report missing links
when a "%%REPO_TOP_URL%%" token is used.

Changed `bin/subst.default.sh` VERSION from "1.3.2 2024-08-05"
to "1.4.0 2025-04-16".

Changed `bin/find-missing-links.sh` VERSION from "1.1.1 2024-04-28"
to "1.2.0 2025-04-16".

Due to a `pandoc(1)` bug fix, `2011/fredriksson/index.html` and
`2012/kang/index.html` were modified.  The bug fix removed extraneous
whitespace that was previously introduced into HTML under certain
situations.  These 2 changes do **NOT** impact the way web browsers
render these pages, however.

Updated sitemap.

Tested the above via `make www gen_status gen_sitemap timestamp` on macOS.
2025-04-16 13:30:55 -07:00
Cody Boone Ferguson f1903e4374 Fix bugs.html
In the previous commit when the missing files status was removed I
forgot to change that there is also a bug in part and in particular the
word 'also'.
2024-11-01 12:10:34 -07:00
Cody Boone Ferguson ad48e7a80c Address missing files in 2001/herrmann1
With thanks to Leo, the filenames have been corrected in the
README.md/index.html file. As the manifest already has them (they were
under different names) the .entry.json file did not have to be updated.
2024-11-01 08:28:42 -07:00
Cody Boone Ferguson 8541a49291 Add missing file in 2001/rosten
The new file, greasymouse.man, IS the cat man page noted by the author
in their remarks. This file was provided by Leo as remark.txt but to
make it render better I have made it a .man file and, for syntax
highlighting, I moved the section titles to the first column of the
file.

I thought of making it a true man page but as the author suggested that
it is a cat man page I decided against this.
2024-11-01 07:43:29 -07:00
Cody Boone Ferguson 45fb924ecf Add missing 1994/shapiro/shapiro.alt.c
With a tip from Leo the missing alt code has been added to the website.

Ta, Leo (🦁⭐️🌌)!
2024-10-31 06:15:37 -07:00
Cody Boone Ferguson b86f81c344 Update 2001/westley bugs.thanks about card.gif 2024-10-31 05:39:23 -07:00
Cody Boone Ferguson af5482825c Reorganise menus
The sections have been modified a fair amount. The Entries menu has been
extended to have: Fixing entries, Updating author info, Thanks for the
help. The first two were moved from FAQ and the last one from About.
The rationale for these, in order: entries and authors have to do with
entries and most of the help involves entries. It also has to do with
website but in 'about' it does not seem the right place, unless maybe it
is renamed to 'Credits' or something (I am not suggesting this one way
or the other). This one is debatable but that was the rationale.

The Status menu has been extended to have: Markdown guidelines and
Security policy. The rationale is that the markdown guidelines are part
of contest guidelines and the security policy is about the status of the
entries and how if there are any security problems they will not be
addressed (instead of about the IOCCC).

The FAQ was extended to have: Compiling entries, Running entries, How to
help. The reason to not have compiling and running entries under Entries
is because this is 'how to' and also the menu was too long. How to help
seems like a good idea under FAQ too (was in About).

About was extended to have the new 'about.html' page (from about.md).
This is a rare case where a new file is useful as it fits under 'About'.
The menu now is: Home page, About the IOCCC, The Judges, Contact us. I
was pondering the 'About [the IOCCC]' at the top and also naming it
'About us' but it seemed like a link to index.html was necessary and as
for 'about us' it seemed less clear as to whether it was about the
judges or the contest itself. The FAQ has been updated slightly for
this.

After further inspection the bin/index.html and the inc/index.html links
were removed from the about section.

With these changes, renaming an item or slight reordering
notwithstanding, I believe that #2006 is probably in good shape.
2024-10-25 11:23:21 -07:00
Cody Boone Ferguson 0ea1e00af7 More link fixes in bugs 2024-10-19 09:12:12 -07:00
Cody Boone Ferguson 7664a00191 More links fixed in bugs 2024-10-19 09:04:29 -07:00
Cody Boone Ferguson ae11be8233 Link fix in bugs file 2024-10-19 09:02:49 -07:00
Cody Boone Ferguson 4a9282082d Clean up bugs file 2024-10-19 08:59:06 -07:00
Cody Boone Ferguson cc026c02b6 Format fix html files from 2019 2024-10-15 12:12:29 -07:00
Cody Boone Ferguson cb5ab11092 Format fixes in html files from 2018 2024-10-15 11:52:45 -07:00
Cody Boone Ferguson ea00ce2409 Format fix html files in 2015, update bugs file 2024-10-15 09:45:12 -07:00
Cody Boone Ferguson b672f37539 Format fixes in html files of 2013 2024-10-14 12:04:47 -07:00
Cody Boone Ferguson b13b36b46a Fix html files for 2012 2024-10-13 17:56:59 -07:00
Cody Boone Ferguson 9d021fc0b9 Make ^NOTE in markdown/html files bold 2024-10-09 11:44:13 -07:00
Cody Boone Ferguson 75829b4561 Fixes in 2006 html files and some of 2011 2024-10-08 12:34:18 -07:00
Cody Boone Ferguson 624a51081c Minor update to bugs.html wrt INABIAF 2024-09-02 12:54:59 -07:00
Cody Boone Ferguson 870d6628eb Fix bugs.html for 2005/mikeash 2024-08-28 15:25:27 -07:00
Cody Boone Ferguson 05097e41d6 Format fix 2005/giljade/index.html + update bugs 2024-08-28 15:20:08 -07:00
Cody Boone Ferguson ba0f9343e1 Finish fixing html files in 2004
There is one thing brought up on GitHub that might necessitate a minor
change but that can happen later.
2024-08-15 10:15:32 -07:00
Cody Boone Ferguson 453ed3d75b More html files of 2004 fixed
Some bug statuses have been changed so the bugs file was also updated
(some removed, some added).

The manifest of 2004/hibachi was fixed some.

The alt_url of 2004/gavare was fixed which required a rebuild of
authors.html.

For 2004/gavin a proper link to QEMU was added. It strikes me as it
possibly being a good idea to have an FAQ about QEMU (as it is not just
2004/gavin that might benefit from it) but I don't know and in any case
I have zero experience with it.

The entries 2004/gavare, 2004/gavin and 2004/hibachi have been checked
for format / display issues. This would suggest that the next entry to
look at is 2004/hoyle.
2024-08-14 09:25:39 -07:00
Cody Boone Ferguson 515281417c Fix html files in 2001
This also includes a few updates to the bugs file.
2024-08-05 09:48:14 -07:00
Cody Boone Ferguson 3deb7ae603 Improve markdown guidelines wording
Amongst the changes here is that we do not need to have the hex or html
code (numbers) for open and close parentheses (in links) as there are
names. '(' is & followed by lpar; and the ')' is the same but 'rpar;'
instead. This makes it easier to remember and type and it generates the
same html as well (they are all valid). Now the markdown files are
consistent in this (in some cases hex was used and in others the html
code).

Although many markdown files were updated no html files needed to be
updated as it generates the same html. Even so I ran the appropriate
rules to do so just to verify this.
2024-07-31 10:44:10 -07:00
Cody Boone Ferguson 1fad29cd2f Fixes in 1998 html files
This includes some notices to those who wish for a greater challenge.

In the 1998/schweikh3 the man page (and its copy to demonstrate the
entry) have been updated slightly but only in comment (move 'or' from
the command suggested to render it in text to its own line before the
next command also in comment).

The bugs file was updated for an entry or two.
2024-07-29 08:47:22 -07:00
Landon Curt Noll f6495f1856 fix awkward bugs entry language for 2019/dogon 2024-07-28 21:53:45 -07:00
Cody Boone Ferguson cf3d54af67 Dead URL fixes in bugs file
That is make inline code blocks to help them stand out a bit more
(previously they were just normal text).

Another entry in this file just linked to another entry by the same
authors and not even to the discussion in the bugs file but just the
source code. This has been corrected too.
2024-07-26 13:58:05 -07:00
Cody Boone Ferguson 8a98e80051 Format fix html files of 1996 2024-07-25 17:22:09 -07:00
Cody Boone Ferguson 9fdeaf1098 Fixes in entries of 1994
The manifest was updated for 1994/tvr. Rebuilt .entry.json and
index.html.

Bug status changed in 1994/tvr as well. The judges noted that it has an
incorrect result in some cases but the author actually noted this as a
feature so it should not be fixed. Other fixes/updates were made in the
bugs file as well.

A number of other entries of 1994 had minor fixes (formatting, links and
similar things).
2024-07-24 12:03:57 -07:00
Cody Boone Ferguson a98c62418c Fix bug status (missing file) in 1993/ant
The unobfuscated version was recently provided by the author so this is
no longer an issue.

A code block in the INABIAF was changed to a quote as it's not code but
something the author wrote.

This entry's index.html might not be done as a question also has to be
addressed before the manifest can be fixed.
2024-07-20 13:56:38 -07:00
Cody Boone Ferguson 7ed91bad01 Fixes in bugs.{md,html}
The text 'If you want to try and fix this (mis)feature, you are welcome
to try' was problematic because these things are not (mis)features but
bugs. Thus it now reads '... fix this, ...'.

Also in one case that was noticed it was not actually anything that
should be fixed at all as they were documented features, not bugs.
2024-07-20 13:21:33 -07:00
Cody Boone Ferguson d7fb575f16 Remove non bug bug status in 1992/westley
This 'bug' was not actually a bug but an improper reading of the author's
remarks. Upon another read later on (today) it became clear what
the author was getting at. It is not what happens upon execution but
rather the layout of the code: if the alternate code (the US specific
version) is a one line of 160 characters and your terminal wraps at 80
columns it will spell out (over two lines):

    mainland America

The westley.alt2.c is exactly this. It can be compiled if one has gcc or
a compiler that does not have the limitations of arg types to main()
that clang has by using make alt2 (not make alt as it would fail for
clang but people might want to use the alternate code and in fact the
try.sh script does this) but it has the original limitation that one
needs to have a terminal that wraps at 80 columns (since it has to be
the same length of code). But as that size is not that common nowadays
(and in most cases one would have to resize their window) it's mostly
for show.

Updated manifest, rebuilt .entry.json and index.html.

Updated bugs.md and rebuilt bugs.html.
2024-07-18 12:00:21 -07:00
Cody Boone Ferguson 22e483723c Make bug statuses in index.html files quotes
Instead of code blocks the bug / (mis)features statuses are quoted
rather than in a code block. In the case that there is more than one a
line break was added at the end of all but the last one.

A bug status was renamed to be slightly more correct (maybe more than
one was renamed for the same purpose but at least one was).

The bug statuses in the quotes are now bold to let them stand out
better.
2024-07-17 09:54:33 -07:00
Cody Boone Ferguson 11dd2625fe Fix bugs status in 1992/gson
The change made was incomplete with the other changes in the commit that
addressed the other bug status added (and the gets(3)/fgets(3) one that
was modified).
2024-07-09 10:54:07 -07:00
Cody Boone Ferguson 03b9d7e27e Change bug status in 1992/gson
An additional look shows that the gets(3) call is for the dictionary
file. It is highly unlikely (though not impossible) that the dictionary
file would ever have a line 256 in length and this as well as because it
was documented is why I changed the buffer size back to the original.

The bug status does still suggest it would be nice if fgets(3) could be
used but it also lists the bugs and limitations the author stated in the
first place which actually does refer to the 256 limit.

I moved the notice to those who want a challenge up a bit in the
README.md file to be right above obfuscatory notes rather than before
those notes get into the details.
2024-07-09 06:22:29 -07:00
Cody Boone Ferguson 92139c55d7 Move 199[1-3]/ant and 2015/howe alt code
The unobfuscated code, which was put in deobfuscated/, has been turned
into alt code. In one case the already existing alt code was made alt2
and the unobfuscated code was alt. In the case of the ones with two C
files there, the one that did not require modification (to compile in
modern systems) were used as those are original.

In a few cases these changes suggested additional files: a test suite
Makefile for the alt code, a try.alt.sh script and maybe some other
things besides.

The bug status was updated for 2015/howe with a known bug: in particular
the test scripts do not work (at least not completely).

In the manifest all references (except for a file name that has not been
renamed - at least not yet) of 'deobfuscated' to 'unobfuscated': a minor
detail that might not matter much but it sounds ever so slightly better
(maybe). These other entries that had an entry_text change were
1995/garry and 2020/endoh2. Rebuilt .entry.json and index.html files for
this (and in the case of the moved code the index.html files also had to
be changed for that in addition to the Makefiles).
2024-07-07 09:53:56 -07:00
Cody Boone Ferguson 1ac055fa85 Reword the recent deobfuscation changes
In most cases the word was changed to 'obfuscation' as it was about
obfuscation, not deobfuscation. In some cases like 1995/leo since the
file was (in 1995/leo) about a secret switch it was changed to
'secret.md' (and 'secret.html') but there were others like that as well.

One entry had the words 'spoiling the size rule' but this had been
changed to 'deobfuscating the size rule' which was obviously wrong.

In the latter YYYY/README.md files the judges had written after some
entries (brief summaries) '...

    ...We'll stop spouting spoilers now. Have fun exploring all the
    entries!

but that was changed to:

    ...We'll stop spouting deobfuscation information now. Have fun
    exploring all the entries!

which wasn't really about deobfuscation but just a brief summary of what
the entries did.

And in the most problematic case (at least for me :-), 2018/ferguson) I
had put a joke in:

    ... but it's the only Easter egg I won't spoil

but it was changed to 'won't deobfuscate' which not only is not what it
is but it spoilt the joke.

In some cases the word was changed back to 'SPOILER' (or similar) but in
most cases not. I believe it should be better now. There are some
caveats, however, as below.

Although make find_missing_links is okay I do not remember if this will
catch links that refer to '%%REPO_URL%%' or other pandoc tokens. This
means I might have to go back to some earlier years to verify links are
okay. That should not take that much time I hope.

It might also be that some wording can still be improved some but it is
hoped this will be discovered when checking links and looking over the
manifest (which obviously changed).
2024-07-04 09:03:45 -07:00
Landon Curt Noll 3aec80f057 convert more spoiler into deobfuscation 2024-06-30 23:23:48 -07:00
Cody Boone Ferguson 6062168fe9 Format fixes in html files of 1994 2024-06-24 13:55:19 -07:00
Landon Curt Noll 7712db4a17 Expand all leading tabs in markdown files
Given how problematic leading tabs in markdown files can be,
we have expanded all leading tabs in markdown files by:

```sh
find * -type f -name '*.md' -print |
  while read -r file; do
    rm -f "$file.tmp" ;
    expand < "$file" > "$file.tmp" ;
    mv -f -v "$file.tmp" "$file" ;
  done
```

Given the previous changes to `bin/pandoc-wrapper.sh` and other recent
commits and recent pull requests, the were were **NO** changes to
any HTML files.  This is a **good thing** as the expression goes.

No there are no leading tabs in any markdown files.
A check to catch any re-introduction of leading tabs
into any markdown file is on the way.

BTW: We do not have anything against leading tabs in files,
even though we have had to deal with their impact on forming
HTML from markdown files (as well as the calc source code).
It is just that this is one of those cases where tabs conflict
(sometimes caused by people wanting to change the classic
8-space tab model) with a desired outcome.

Perform `make www` to perform the above and test under macOS.
2024-06-24 11:57:35 -07:00
Cody Boone Ferguson 0f9d4ceee7 Try and fix problem with bugs.html being rebuilt
There were tabs in the part of the file (copy pasted in fact) that was
regenerated each time and I converted them to spaces. Doing a git add -u
and then trying to rebuild bugs.html did not seem to update the file and
since it had in the past I hope this solves the problem.
2024-06-24 04:59:06 -07:00
Cody Boone Ferguson 12b548bf8a Fixes in html files of 1993 2024-06-23 11:54:51 -07:00
Cody Boone Ferguson 3846496762 Add table of contents (years) to bugs file 2024-06-23 08:06:53 -07:00
Landon Curt Noll 4ee4c731f7 convert markdown copyright TAB chars into SPACE chars
While not strictly necessary, replacing the two ASCII tab characters
in the markdown copyright comment makes it easier to detect problematic
TAB indentation within markdown files.

After this commit, only 90 markdown files have leading ASCII TAB
characters.  And again, while not strictly necessary, we can consider
running expand on those 90 markdown files to see what effect that
might have on the HTML files they produce.

Replace leading ASCII TAB characters with multiples of 8 ASCII SPACE
characters (the default action of the `expand(1)` tool) might have
an negative effect on some HTML formatting where **hack-a-round**
formatting was attempted to fix broken indentation caused by
problematic ASCII TAB characters.

Think of this as a baseline for evaluating leading
TAB characters within markdown files.

TODO: Consider either using `expand(1)` to replace leading ASCII
TAB characters with multiples of 8 ASCII SPACE characters AND/OR
modifying the appropriate `bin` tool to convert leading ASCII TAB
characters into multiples of 8 ASCII SPACE characters.
2024-06-22 22:15:25 -07:00
Cody Boone Ferguson 2ed61262a8 Add missing links to bugs file 2024-06-22 15:56:24 -07:00
Cody Boone Ferguson 843c5f66bb Minor fixes in 1992/westley/index.html
I believe now that it is in good order except for a strange indentation
issue in the index.html file in some code blocks that presumably has to
be fixed with CSS.

The bugs file was also slightly updated.
2024-06-22 13:40:00 -07:00