add missing year-level README.md for 2014, 2015
We found in our deep archives, the year-level README files for 2014, 2015. They have been converted to markdown in a generic crude way. TODO: Edit and improve these files to the same level as the other year-level README.md files.
This commit is contained in:
1 parent
151eab6469
commit
e6c0fd54b2
2 files changed
+230
No files matched your search
+111
@@ -0,0 +1,111 @@
|
||||
# 2014 marked the "The Twenty Third International Obfuscated C Code Contest"
|
||||
|
||||
|
||||
## 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/](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 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 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
|
||||
|
||||
We believe you will again be impressed with this year's winners.
|
||||
|
||||
This year, 2014:
|
||||
|
||||
We, the judges, were very surprised by this as many of the multiple
|
||||
winners submitted very different styles of entries.
|
||||
|
||||
This year was the second time the IOCCC size tool was used. Rule 2
|
||||
required that when program source is fed as input to the current IOCCC size
|
||||
tool, and the IOCCC size tool -i command line option is used, the value
|
||||
printed should be less than or equal to 2053.
|
||||
|
||||
We were pleased to see that abuse of the rules was extended to abuse
|
||||
to the IOCCC size tool. Matt Zucker, followed by a few users, were
|
||||
able to discover cleaver use of certain // comments to perplex the size tool.
|
||||
The abuse was so bad that the judges released a critical and mandatory
|
||||
patch to the IOCCC size tool on 2014-09-23.
|
||||
|
||||
There were some great entries that did not win. Unfortunately
|
||||
some entries lost because they:
|
||||
|
||||
+ were too large according the IOCCC size tool and didn't
|
||||
even attempt to justify their excess by a clever abuse of the rules
|
||||
|
||||
+ depended on a single obfuscation trick
|
||||
|
||||
+ didn't work as documented
|
||||
|
||||
We hope the authors of some of those entries will fix and re-submit
|
||||
them for the next IOCCC.
|
||||
|
||||
There is a risk in submitting an entry that is similar to a well
|
||||
used theme by previous winners. Previous winners set a very high
|
||||
bar. A new winner must not only compete against submissions
|
||||
from the current year, they must also excel over any similar winners
|
||||
in some particularly impressive way.
|
||||
|
||||
|
||||
## On the delay in releasing the winners
|
||||
|
||||
We apologize on the delay of sending the winners the tarball for them
|
||||
to review. There were some unforeseen events, such as unplanned mandatory
|
||||
business travel, the death of a IOCCC judge mother, etc. that impacted
|
||||
our planned schedule for building the IOCCC winner tarball.
|
||||
|
||||
During some of these forced delays, we took the time to better automate
|
||||
some of the tools needed to package the source for the winners to review
|
||||
and to post the edited winners to the web site. It is our intent that
|
||||
these changes made during those delays will make releasing future IOCCC
|
||||
winners a faster procedure.
|
||||
|
||||
p.s. The final advice given to Landon by his mom: "Have fun."
|
||||
We recommend following this advice were possible.
|
||||
|
||||
|
||||
## 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](http://www.ioccc.org/contact.html)
|
||||
|
||||
For news of the next contest watch:
|
||||
|
||||
* [http://www.ioccc.org/](http://www.ioccc.org/)
|
||||
|
||||
|
||||
# Copyright and License
|
||||
|
||||
Copyright (C) 2014,2024, Landon Curt Noll and Leonid A. Broukhis. All Rights Reserved.
|
||||
This work is licensed under a [Creative Commons CC BY-SA 4.0 DEED Attribution-ShareAlike
|
||||
4.0 International](https://creativecommons.org/licenses/by-sa/4.0/) license.
|
||||
If you do use this work in some form, the [IOCCC judges](/judges.html) would appreciate
|
||||
(but does not require) if you were to [send us a note about your use](/contact.html).
|
||||
+119
@@ -0,0 +1,119 @@
|
||||
# 2015 marked the "The Twenty Fourth International Obfuscated C Code Contest"
|
||||
|
||||
|
||||
## 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/](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 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 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 winners
|
||||
|
||||
We believe you will again be impressed with this year's winners.
|
||||
|
||||
The fraction of worthy entries was higher than usual.
|
||||
|
||||
We call to your attention, the _hou_ entry, that performs the MD5
|
||||
cryptographic hash. Normally implemented with a set of integer and
|
||||
boolean operations, this code uses floating point variables inside
|
||||
a single while loop filled with unusual constants, cosine, square
|
||||
root, and exponent function calls. The number of lines of code
|
||||
is also smaller than the original algorithm.
|
||||
|
||||
The _mills2_ source code is a very compressed version of a decompression
|
||||
algorithm. We think those who enjoy compression algorithms will
|
||||
particularly enjoy this entry.
|
||||
|
||||
We suggest that you attempt to completely understand the _endoh4_
|
||||
1-liner program: another impressive compact piece of C code.
|
||||
|
||||
And while you are at it, cat the _endoh2_ prog.c code. Compile it
|
||||
and look at the source code again.
|
||||
|
||||
In a "Back to the Future" moment, _endoh3_ gave us a twist on one of
|
||||
the all time best IOCCC winners from 1984.
|
||||
|
||||
We also suggest that you take a very good look at how the _muth_ code
|
||||
makes full use of the C Pre-Processor.
|
||||
|
||||
...We'll stop spouting spoilers now. Have fun exploring all the entries!
|
||||
|
||||
|
||||
## Remarks on some of submissions that did not win
|
||||
|
||||
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.
|
||||
|
||||
|
||||
## 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](http://www.ioccc.org/contact.html)
|
||||
|
||||
For news of the next contest watch:
|
||||
|
||||
* [http://www.ioccc.org/](http://www.ioccc.org/)
|
||||
|
||||
|
||||
# Copyright and License
|
||||
|
||||
Copyright (C) 2015,2024, Landon Curt Noll and Leonid A. Broukhis. All Rights Reserved.
|
||||
This work is licensed under a [Creative Commons CC BY-SA 4.0 DEED Attribution-ShareAlike
|
||||
4.0 International](https://creativecommons.org/licenses/by-sa/4.0/) license.
|
||||
If you do use this work in some form, the [IOCCC judges](/judges.html) would appreciate
|
||||
(but does not require) if you were to [send us a note about your use](/contact.html).
|
||||
Reference in new issue
Block a user