A lot of the award titles that had more than one word capitalised were changed to just one word capitalised, the first. Some were changed to have multiple words capitalised. This happened when it was something like '... prize' or '... award'. An exception to this is 2020/ferguson1: 'Don't tread on me award'. This is because I am not quite sure if I like 'Don't Tread On Me Award' or if it should be 'Don't Tread on Me Award' (probably not that). For some like 'Grand Prize' or 'Bill Gates Award' it's simple but I'm not so sure for my Snake entry of 2020. I will try changing it and comparing it side-by-side to see which looks nicest. This commit should make it easier to update the form of the award titles in that they should all be consistent (or more consistent if not completely) though it should be noted that the macOS Numbers application (spreadsheet) is case-insensitive. A reason I did not change 'Don't tread on me award' to 'Don't Tread On Me Award', yet, besides the above reasons, is that it's a longer title and I am not sure how I like that many words capitalised. Still it's a title of a slogan/whatever so it might be better that way. This will be determined in the near future. The tmp/year_prize.numbers had the text size increased a fair bit as the default is too small for my pitiful vision (I changed it within reason as it can become harder in another way if it's too big - 16" MacBook Pro screen). One of the columns was also widened as it was too short even for the smaller size.
Twenty Sixth International Obfuscated C Code Contest
Standard IOCCC stuff
View the index.html web page for the given winning entry for information on how
on how to compile it and how to run the winning program.
Look at the winning source and try to figure how it does what it does!
You may then wish to look at the Author's remarks for even more details.
The primary site can be found at www.ioccc.org.
Use make to compile entries. It is possible that on non-Unix / non-Linux
systems the Makefile needs to be changed. See the Makefile for details.
Read over the Makefile and index.html files for compile/build issues. Your
system may require certain changes (add or remove a library, add or remove a
#define).
Some C compilers are not quite as good as they should be. If yours is lacking, you may need to compile using clang or gcc instead of your local compiler.
Remarks on some of the winning entries
This year's winning entries are impressive!
The Most in need of debugging - 2019/endoh is very inventive in a way it produces its own text!
The Most likely to be awarded - 2019/ciura has an amazing vocabulary!
There are again nods to entries of the years:
These nods to not run afoul of the guideline:
We tend to dislike programs that:
...
are rather similar to previous entries
because the entry 2019/dogon appropriately pays homage to past entries without blatantly reusing their code.
...We'll stop spouting spoilers now. Have fun exploring all the entries!
Remarks on some of submissions that did not win
Some entries tried to get around the size limit by submitting a data file that was really C code and then blindly including code in prog.c.
Quite a few entries suffered from undefined behavior like accessing uninitialized locals and/or reading-writing below the stack. We advise running your entry through valgrind to make sure those mistakes are avoided.
Using extra arguments to main, or arguments of wrong types as a quick and dirty
way of declaring variables is now passé. Clang, for example, rejects them outright.
We hope the authors of some of those entries will fix and re-submit them for the next IOCCC.
Some entries seemed to have a good idea, but the implementation of the idea was limited in scope.
Final Comments
IMPORTANT NOTE: See contact.html for up to date contact details as well as details on how to provide fixes to any of the entries. See also the IOCCC FAQ for additional information on the IOCCC.