Files
ioccc/2015/index.html
T
Cody Boone Ferguson fbe4609cc9 sgit -e 's/web site/website/g'
A choice was made a while back to use website and not web site so
changed all new references of 'web site' to 'website':

    sgit -e 's/web site/website/g' '*.md' '*.html'

As this also occurs in the FAQ and there were some minor mods (just
textual, including some fun, not a new FAQ) these are included too.
2025-03-01 10:32:08 -08:00

636 lines
23 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- START: two lines up starts content from: inc/top.default.html -->
<!-- END: this line ends content from: inc/top.default.html -->
<!-- START: this line starts content from: inc/head.default.html -->
<head>
<link rel="stylesheet" href="../ioccc.css">
<link href="https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap" rel="stylesheet">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>2015 - The 24th IOCCC</title>
<link rel="icon" type="image/x-icon" href="../favicon.ico">
<meta name="description" content="IOCCC Year 2015">
<meta name="keywords" content="IOCCC, 2015, IOCCC 2015, IOCCC entry, The 24th IOCCC">
</head>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
<!-- !!! DO NOT MODIFY THIS FILE - This file is generated by a tool !!! -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- END: this line ends content from: inc/head.default.html -->
<!-- -->
<!-- This web page was formed via the tool: bin/gen-year-index.sh -->
<!-- The content of main section of this web page came from: 2015/README.md -->
<!-- -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2015/README.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2015/README.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2015/README.md !!! -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- Markdown content was converted into HTML via the tool: bin/md2html.sh -->
<!-- START: this line starts content from: inc/body.default.html -->
<body>
<!-- END: this line ends content from: inc/body.default.html -->
<!-- START: this line starts content from: inc/topbar.default.html -->
<div class="theader">
<nav class="topbar">
<div class="container">
<div class="logo">
<a href="../index.html" class="logo-link">
IOCCC
</a>
</div>
<div class="topbar-items">
<div class="item">
<span class="item-header">
Entries
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../years.html" class="sub-item-link">
Winning entries
</a>
</div>
<div class="outfit-font">
<a href="../authors.html" class="sub-item-link">
Winning authors
</a>
</div>
<div class="outfit-font">
<a href="../location.html" class="sub-item-link">
Location of authors
</a>
</div>
<div class="outfit-font">
<a href="../bugs.html" class="sub-item-link">
Bugs and (mis)features
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#fix_an_entry" class="sub-item-link">
Fixing entries
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#fix_author" class="sub-item-link">
Updating author info
</a>
</div>
</div>
</div>
<div class="item">
<span class="item-header">
Status
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../news.html" class="sub-item-link">
News
</a>
</div>
<div class="outfit-font">
<a href="../status.html" class="sub-item-link">
Contest status
</a>
</div>
<div class="outfit-font">
<a href="../next/index.html" class="sub-item-link">
Rules and guidelines
</a>
</div>
<div class="outfit-font">
<a href="../markdown.html" class="sub-item-link">
Markdown guidelines
</a>
</div>
<div class="outfit-font">
<a href="../SECURITY.html" class="sub-item-link">
Security policy
</a>
</div>
</div>
</div>
<div class="item">
<span class="item-header">
FAQ
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../faq.html" class="sub-item-link">
Frequently Asked Questions
</a>
</div>
<div class="outfit-font">
<a href="../quick-start.html#enter" class="sub-item-link">
Enter the IOCCC
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#compiling" class="sub-item-link">
Compiling entries
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#running_entries" class="sub-item-link">
Running entries
</a>
</div>
<div class="outfit-font">
<a href="../faq.html#help" class="sub-item-link">
How to help
</a>
</div>
</div>
</div>
<div class="item">
<span class="item-header">
About
</span>
<div class="sub-item">
<div class="outfit-font">
<a href="../index.html" class="sub-item-link">
Home page
</a>
</div>
<div class="outfit-font">
<a href="../about.html" class="sub-item-link">
About the IOCCC
</a>
</div>
<div class="outfit-font">
<a href="../judges.html" class="sub-item-link">
The Judges
</a>
</div>
<div class="outfit-font">
<a href="../thanks-for-help.html" class="sub-item-link">
Thanks for the help
</a>
</div>
<div class="outfit-font">
<a href="../contact.html" class="sub-item-link">
Contact us
</a>
</div>
</div>
</div>
</div>
</div>
</nav>
<div class="header-mobile-menu">
<noscript>
<a href="../nojs-menu.html" class="topbar-js-label">
Please Enable JavaScript
</a>
</noscript>
<button id="header-open-menu-button" class="topbar-mobile-menu">
<img
src="../png/hamburger-icon-open.png"
alt="hamburger style menu icon - open state"
width=48
height=48>
</button>
<button id="header-close-menu-button" class="hide-content">
<img
src="../png/hamburger-icon-closed.png"
alt="hamburger style menu icon - closed state"
width=48
height=48>
</button>
<div id="mobile-menu-panel" class="hide-content">
<div class="mobile-menu-container">
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
Entries
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../years.html">
Winning entries
</a>
<a class="mobile-submenu-item" href="../authors.html">
Winning authors
</a>
<a class="mobile-submenu-item" href="../location.html">
Location of authors
</a>
<a class="mobile-submenu-item" href="../bugs.html">
Bugs and (mis)features
</a>
<a class="mobile-submenu-item" href="../faq.html#fix_an_entry">
Fixing entries
</a>
<a class="mobile-submenu-item" href="../faq.html#fix_author">
Updating author info
</a>
<a class="mobile-submenu-item" href="../thanks-for-help.html">
Thanks for the help
</a>
</div>
</div>
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
Status
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../news.html">
News
</a>
<a class="mobile-submenu-item" href="../status.html">
Contest status
</a>
<a class="mobile-submenu-item" href="../next/index.html">
Rules and guidelines
</a>
<a class="mobile-submenu-item" href="../markdown.html">
Markdown guidelines
</a>
<a class="mobile-submenu-item" href="../SECURITY.html">
Security policy
</a>
</div>
</div>
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
FAQ
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../faq.html">
Frequently Asked Questions
</a>
<a class="mobile-submenu-item" href="../quick-start.html#enter">
Enter the IOCCC
</a>
<a class="mobile-submenu-item" href="../faq.html#compiling">
Compiling entries
</a>
<a class="mobile-submenu-item" href="../faq.html#running_entries">
Running entries
</a>
<a class="mobile-submenu-item" href="../faq.html#help">
How to help
</a>
</div>
</div>
<div class="mobile-menu-wrapper">
<div class="mobile-menu-item">
About
</div>
<div class="mobile-submenu-wrapper">
<a class="mobile-submenu-item" href="../index.html">
Home page
</a>
<a class="mobile-submenu-item" href="../about.html">
About the IOCCC
</a>
<a class="mobile-submenu-item" href="../judges.html">
The Judges
</a>
<a class="mobile-submenu-item" href="../contact.html">
Contact us
</a>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
var headerOpenMenuButton = document.getElementById("header-open-menu-button");
var headerCloseMenuButton = document.getElementById("header-close-menu-button");
var mobileMenuPanel = document.getElementById("mobile-menu-panel");
headerOpenMenuButton.addEventListener("click", () => {
headerOpenMenuButton.classList.remove("topbar-mobile-menu");
headerOpenMenuButton.classList.add("hide-content");
headerCloseMenuButton.classList.remove("hide-content");
headerCloseMenuButton.classList.add("topbar-mobile-menu");
mobileMenuPanel.classList.remove("hide-content");
mobileMenuPanel.classList.add("topbar-mobile-panel");
});
headerCloseMenuButton.addEventListener("click", () => {
headerCloseMenuButton.classList.remove("topbar-mobile-menu");
headerCloseMenuButton.classList.add("hide-content");
mobileMenuPanel.classList.add("hide-content");
mobileMenuPanel.classList.remove("topbar-mobile-panel");
headerOpenMenuButton.classList.add("topbar-mobile-menu");
headerOpenMenuButton.classList.remove("hide-content");
});
</script>
<!-- END: this line ends content from: inc/topbar.default.html -->
<!-- START: this line starts content from: inc/header.default.html -->
<div class="header">
<a href="../2011/zucker/index.html">
<img src="../png/ioccc.png"
alt="IOCCC image by Matt Zucker"
width=300
height=110>
</a>
<h1>The International Obfuscated C Code Contest</h1>
<h2>2015 - The 24th IOCCC</h2>
</div>
<!-- END: this line ends content from: inc/header.default.html -->
<!-- START: this line starts content from: inc/navbar.year.mid.html -->
<div class="navbar">
<a class="Left" href="../2014/index.html">&larr; 2014</a>
<a class="Left" href="../years.html">&uarr; top &uarr;</a>
<a class="Left" href="../2018/index.html">2018 &rarr;</a>
<a class="Right" href="#inventory">Inventory</a>
<a class="Right" href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fwww.ioccc.org%2F2015%2Findex.html">&#x2713;</a>
</div>
<!-- END: this line ends content from: inc/navbar.year.mid.html -->
<!-- START: this line starts content from: inc/before-content.default.html -->
<div class="content" id="content">
<!-- END: this line ends content from: inc/before-content.default.html -->
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- BEFORE: 1st line of markdown file: 2015/README.md -->
<h1 id="twenty-fourth-international-obfuscated-c-code-contest">Twenty Fourth International Obfuscated C Code Contest</h1>
<h2 id="standard-ioccc-stuff">Standard IOCCC stuff</h2>
<p>View the <code>index.html</code> web page for the given winning entry for information on how
compile the entry 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. This year we included most of the
information included by the submitter.</p>
<p>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.</p>
<h3 id="historical-note">Historical note:</h3>
<p>The IOCCC has a website and now has a number of international mirrors.
The primary website can be found at <a href="https://www.ioccc.org">www.ioccc.org</a>.</p>
<h3 id="historical-update">Historical update:</h3>
<p>The IOCCC website once had a number of
<a href="https://web.archive.org/web/20201030210517/https://www.ioccc.org/mirror.html">international mirrors</a>.
As of 2020 Dec 29, <a href="https://www.github.com">GitHub</a> serves as the distributed server farm for the
<a href="https://github.com/ioccc-src/winner">IOCCC winner repo</a> that GitHub renders as
<a href="https://www.ioccc.org">Official IOCCC website - www.ioccc.org</a>.</p>
<h2 id="remarks-on-some-of-the-winning-entries">Remarks on some of the winning entries</h2>
<p>We believe you will again be impressed with this year’s winning entries.</p>
<p>The fraction of worthy entries was higher than usual.</p>
<p>We call to your attention the <a href="hou/index.html">hou</a> 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 <code>while</code> 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.</p>
<p>The <a href="mills2/index.html">mills2</a> source code is a very compressed version of a
decompression algorithm. We think those who enjoy compression algorithms will
particularly enjoy this entry.</p>
<p>We suggest that you attempt to completely understand the
<a href="endoh4/index.html">endoh4</a> 1-liner program: another impressive compact piece of
C code.</p>
<p>And while you are at it, cat the <a href="https://github.com/ioccc-src/winner/blob/master/2015/endoh2/prog.c">endoh2 prog.c</a> code. Compile it
and look at the source code again.</p>
<p>In a “Back to the Future” moment, <a href="endoh3/index.html">endoh3</a> gave us a twist on
one of the all time best IOCCC entries from 1984.</p>
<p>We also suggest that you take a very good look at how the
<a href="muth/index.html">muth</a> code makes full use of the C Pre-Processor.</p>
<p>…We’ll stop spouting spoilers now. Have fun exploring all the entries!</p>
<h2 id="remarks-on-some-of-submissions-that-did-not-win">Remarks on some of submissions that did not win</h2>
<p>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).</p>
<p>Rule 22, now known as <strong>Catch 22</strong> states:</p>
<blockquote>
<ol start="22" type="1">
<li>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.</li>
</ol>
<p>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.</p>
</blockquote>
<p>A number of other entries were based on <a href="https://github.com/ioccc-src/winner/blob/master/2015/iocccsize.c">iocccsize.c</a>, making
derivative works rather than original works.</p>
<p>Still other entries were too large, violating the first line of rule 2:</p>
<blockquote>
<ol start="2" type="1">
<li>The size of your program source must be &lt;= 4096 bytes in length.</li>
</ol>
</blockquote>
<p>While these entries might have passed under the 2053 limit for iocccsize,
they were larger than &lt;= 4096 bytes, sometimes by an order or magnitude.</p>
<p>We hope the authors of some of those entries will fix and re-submit
them for the next IOCCC.</p>
<h2 id="final-comments">Final Comments</h2>
<p>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.</p>
<p>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.</p>
<p>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).</p>
<p>For the latest information on how to contact the <a href="../judges.html">IOCCC judges</a> please visit</p>
<ul>
<li><a href="../contact.html">contact.html</a></li>
</ul>
<p>For news of the next contest watch:</p>
<ul>
<li><a href="../news.html">news.html</a></li>
</ul>
<!--
Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved.
You are free to share and adapt this file under the terms of this license:
Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
For more information, see:
https://creativecommons.org/licenses/by-sa/4.0/
-->
<!-- AFTER: last line of markdown file: 2015/README.md -->
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- START: this line starts content for HTML phase 22 by: bin/output-year-index.sh via bin/md2html.sh -->
<!-- START: this line starts content generated by: bin/output-year-index.sh -->
<div id="inventory">
<div id="2015">
<h1 id="winning-entries-of-2015---the-24th-ioccc">Winning Entries of 2015 - The 24th IOCCC</h1>
</div>
</div>
<p><a href="2015.tar.bz2"><strong>Download all winning entries from 2015</strong></a></p>
<ul>
<li><a href="burton/index.html"><strong>2015/burton</strong></a> - <strong>Most useful</strong></li>
<li><a href="dogon/index.html"><strong>2015/dogon</strong></a> - <strong>Most crafty</strong></li>
<li><a href="duble/index.html"><strong>2015/duble</strong></a> - <strong>Best handwriting</strong></li>
<li><a href="endoh1/index.html"><strong>2015/endoh1</strong></a> - <strong>Most diffused reaction</strong></li>
<li><a href="endoh2/index.html"><strong>2015/endoh2</strong></a> - <strong>Most overlooked obfuscation</strong></li>
<li><a href="endoh3/index.html"><strong>2015/endoh3</strong></a> - <strong>Back to the Future Award</strong></li>
<li><a href="endoh4/index.html"><strong>2015/endoh4</strong></a> - <strong>Best one liner</strong></li>
<li><a href="hou/index.html"><strong>2015/hou</strong></a> - <strong>Most well rounded hash</strong></li>
<li><a href="howe/index.html"><strong>2015/howe</strong></a> - <strong>Most different</strong></li>
<li><a href="mills1/index.html"><strong>2015/mills1</strong></a> - <strong>For the Birds! Award</strong></li>
<li><a href="mills2/index.html"><strong>2015/mills2</strong></a> - <strong>Most compact</strong></li>
<li><a href="muth/index.html"><strong>2015/muth</strong></a> - <strong>Most complete use of CPP</strong></li>
<li><a href="schweikhardt/index.html"><strong>2015/schweikhardt</strong></a> - <strong>Best documented</strong></li>
<li><a href="yang/index.html"><strong>2015/yang</strong></a> - <strong>Most pointed reaction</strong></li>
</ul>
<hr style="width:10%;text-align:left;margin-left:0">
<h4>
Jump to: <a href="#">top</a>
</h4>
<!-- END: next line ends content generated by: bin/output-year-index.sh -->
<!-- END: this line ends content for HTML phase 22 by: bin/output-year-index.sh via bin/md2html.sh -->
<!-- START: this line starts content from: inc/after-content.default.html -->
</div>
<!-- END: this line ends content from: inc/after-content.default.html -->
<!-- START: this line starts content from: inc/footer.inventory.html -->
<!--
Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved.
You are free to share and adapt this file under the terms of this license:
Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
For more information, see:
https://creativecommons.org/licenses/by-sa/4.0/
-->
<div class="footer">
<div id="copyright"><h3>Copyright &copy; 1984-2024 by Landon Curt Noll:
<a href="https://creativecommons.org/faq/#what-does-some-rights-reserved-mean"
target="_blank"
rel="license noopener noreferrer">Some Rights Reserved</a></h3>
<p>
This work is <b>licensed by Landon Curt Noll</b> under
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/?ref=chooser-v1"
target="_blank"
rel="license noopener noreferrer"
style="display:inline-block;">CC BY-SA 4.0</a></b>.
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
src="../png/cc.png"
alt="cc inside circle symbol">
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
src="../png/by.png"
alt="person inside circle symbol">
<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;"
src="../png/sa.png"
alt="arrow looping back on itself inside circle symbol"><br>
You should <b>carefully review</b> the
<b><a href="https://creativecommons.org/licenses/by-sa/4.0/legalcode.en"
target="_blank"
rel="license noopener noreferrer">CC BY-SA 4.0 LEGAL CODE</a></b>
before using the licensed material.<br>
You may wish to review the
<b><a href="../license.html"
target="_blank"
rel="license noopener noreferrer">highlights of some of the key features and terms</a></b>
of <b>CC BY-SA 4.0</b>.<br>
</p>
</div>
<div id="coda"><h3>Coda</h3>
<p>
<a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fwww.ioccc.org%2F2015%2Findex.html" rel="nofollow">Nu HTML check this web page</a><br>
<a href="#top">Jump to top</a> <a href="#content">Jump to Content</a> <a href="#inventory">Jump to Inventory</a><br>
</p>
</div>
</div>
<!-- END: this line ends content from: inc/footer.inventory.html -->
<!-- START: this line starts content from: inc/bottom.default.html -->
</body>
</html>
<!-- END: this line ends content from: inc/bottom.default.html -->