2004 marked the "The Seventeenth International Obfuscated C Code Contest" Copyright (C) 2001-2004, Landon Curt Noll, Simon Cooper, Peter Seebach 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. Standard IOCCC stuff -------------------- The IOCCC has a web site and now has a number of international mirrors. The primary site can be found at, http://www.ioccc.org/ 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 submitters. 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 ANSI C compilers are not quite as good as they should be. If yours is lacking, you may need to compile using gcc instead of your local compiler. Remarks on some of the entries ------------------------------ There were some outstanding entries that did not win. Unfortunately some very good entries lost because they: + depended too much on non-portable side effects in expressions; + depended too much on a particular byte order; + required the use of a special script, data file or pseudo-machine language that was not supplied with the entry. We hope the authors of some of those entries will fix and re-submit them for the next IOCCC. We believe you will be impressed with this year's winners. The Best of Show is a fine example of obfuscation. But don't ignore the other winners! There are games, utilities, programs that output images and a one-liner that is incredibly compact for what it can do. The Best Abuse of the Guidelines is technically allowed by the rules. This year we allowed it due to the functionality of the program. This entry is one of the easiest to read! Don't assume you can win using similar techniques next time ... :-) This year a single person won two awards! We also had repeat winners with their 6th, 4th and 2nd winning entries this year! (Please note that judging is done completely anonymously. Be warned that we may disqualify entries that reveal the identity of the submitter). Final Comments -------------- 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 http://www.ioccc.org/contact.html Watch: http://www.ioccc.org/ for news of the next contest.