Copyright © 2018, Landon Curt Noll, Simon Cooper, and Leonid A. Broukhis. All Rights Reserved. Permission for personal, educational or non-profit use is granted provided this copyright and notice are included in its entirety and remains unaltered. All other uses must receive prior permission from the contest judges.
The primary IOCCC web site can be found at,
Use make to compile entries. It is possible that on non-Un*x / non-Linux systems the makefile needs to be changed. See the Makefile for details.
Look at the source and try to figure out what the programs do, and run them with various inputs. If you want to, look at the hints files for spoilers - this year we included most of the information included by the submitter.
Read over the makefile 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.
We believe you will again be impressed with this year’s winners.
The “Best of show” (mills) is an amazing tribute to winners from 1984 and 2015.
Take a close look at the “Most likely to top the charts” (hou) winner. Observe that while it contains no variables and no operators, it remains functional in what it does.
The “Best one-liner” (burton1), at 109 characters, is a short and sweet implementation of a classic utility and a nod to a winner from 1986. Sometimes it takes 20 ox years to do things the true IOCCC way.
The color of the remarks text this year was inspired by one of the stars of the “Most stellar” winner (poikola).
The “Best use of python” (endoh2) is a not what you might think it is. It is something completely different.
The “Most likely to be awarded” (ciura) has an amazing vocabulary!
There are also nods to winners of the years 2000 (bellard), 1989 (yang), …
…We’ll stop spouting spoilers now. Have fun exploring all the entries!
The number of entries that would have made it into the final rounds would have been much higher had some people paid attention to rules 2 and 22 (one third of 666).
Rule 22, now known as “Catch 22” states:
| 22) Your source code, data files, remarks and program output must NOT | identify the authors of your code. The judges STRONGLY prefer to | not know who is submitting entries to the IOCCC. | The "Peter Honeyman is exempt" guideline also applies to this rule. | Identifying yourself, in an obvious way in your code, data, remarks | or program output, unless you are Peter Honeyman or pretending | to be Peter Honeyman, will be grounds for disqualification of your entry.
A number of other entries were based on iocccsize.c, making derivative works rather than original works.
Still other entries were too large, violating the first line of rule 2:
2) The size of your program source must be <= 4096 bytes in length.
While these entries might have passed under the 2053 limit for iocccsize, they were larger than <= 4096 bytes, sometimes by an order or magnitude.
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.
Please feel free to send us comments and suggestions about the competition, this README or anything else that you would like to see in future contests.
If you use, distribute or publish these entries in some way, please drop us a line. We enjoy seeing who, where and how the contest is used.
If you have problems with any of the entries, AND YOU HAVE A FIX, please send us the fix (patch file or the entire changed file).
For the latest information on how to contact the IOCCC Judges please visit
For news of the next contest watch:
© Copyright 1984-2018,
Leo Broukhis, Simon Cooper, Landon Curt Noll
- All rights reserved