A few page names were changed and menu link (titles) were changed too. By page names it means either DESCRIPTION or HEADER_2 in bin/md2html.cfg. Although it looks better and is more consistent, there might be one or two that can be further improved. Naturally every html file that is markdown based was updated.
723 lines
32 KiB
HTML
723 lines
32 KiB
HTML
<!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>The International Obfuscated C Code Contest</title>
|
||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||
<meta name="description" content="IOCCC Rules">
|
||
<meta name="keywords" content="IOCCC, rules, Rules">
|
||
</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-top-html.sh -->
|
||
<!-- The content of main section of this web page came from: next/rules.md -->
|
||
<!-- -->
|
||
|
||
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
|
||
<!-- !!! Do not modify this web page, instead modify the file: next/rules.md !!! -->
|
||
<!-- !!! Do not modify this web page, instead modify the file: next/rules.md !!! -->
|
||
<!-- !!! Do not modify this web page, instead modify the file: next/rules.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 winning authors
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="../bugs.html" class="sub-item-link">
|
||
Bugs and (mis)features
|
||
</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">
|
||
IOCCC 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>
|
||
</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">
|
||
FAQ
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="../faq.html#submit" class="sub-item-link">
|
||
How to enter the IOCCC
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="../faq.html#fix_an_entry" class="sub-item-link">
|
||
Fixing IOCCC entries
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="../faq.html#fix_web_site" class="sub-item-link">
|
||
Fixing the website
|
||
</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">
|
||
About
|
||
</span>
|
||
|
||
<div class="sub-item">
|
||
<div class="outfit-font">
|
||
<a href="../index.html" class="sub-item-link">
|
||
IOCCC Home
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="../judges.html" class="sub-item-link">
|
||
The IOCCC Judges
|
||
</a>
|
||
</div>
|
||
|
||
<div class="outfit-font">
|
||
<a href="../contact.html" class="sub-item-link">
|
||
Contacting the IOCCC
|
||
</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="../markdown.html" class="sub-item-link">
|
||
IOCCC markdown guidelines
|
||
</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">
|
||
Authors of winning IOCCC entries
|
||
</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>
|
||
|
||
</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="../status.html">
|
||
Contest status
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../next/index.html">
|
||
Rules and Guidelines
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../news.html">
|
||
IOCCC News
|
||
</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="../faq.html#submit">
|
||
How to enter the IOCCC
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../faq.html#fix_an_entry">
|
||
Fixing IOCCC entries
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../faq.html#fix_web_site">
|
||
Fixing the website
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../faq.html#fix_author">
|
||
Fixing author info
|
||
</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">
|
||
IOCCC Home
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../judges.html">
|
||
The IOCCC Judges
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../contact.html">
|
||
Contacting the IOCCC
|
||
</a>
|
||
|
||
<a class="mobile-submenu-item" href="../thanks-for-help.html">
|
||
Thanks for the help
|
||
</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>IOCCC Rules</h2>
|
||
</div>
|
||
|
||
<!-- END: this line ends content from: inc/header.default.html -->
|
||
<!-- START: this line starts content from: inc/navbar.empty.html -->
|
||
|
||
<div class="navbar">
|
||
<a class="Right" href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2Fnext%2Frules.html">✓</a>
|
||
</div>
|
||
|
||
<!-- END: this line ends content from: inc/navbar.empty.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: next/rules.md -->
|
||
<!-- START: this line starts content from: inc/rules.closed.hdr -->
|
||
<h1 id="warning-these-rules-are-out-of-date">WARNING: These rules are OUT OF DATE</h1>
|
||
<p>These rules are a <strong>VERY TENTATIVE proposal</strong> for the next IOCCC
|
||
and are <strong>VERY LIKELY</strong> to be updated before the next IOCCC.
|
||
They are are provided as a <strong>very tentative</strong> hint at <strong>what
|
||
MIGHT</strong> be used in the next IOCCC.</p>
|
||
<p>Please regard these rules as a historical archive.</p>
|
||
<h1 id="the-ioccc-is-closed">The IOCCC is closed</h1>
|
||
<p>The IOCCC is <strong>NOT</strong> accepting new submissions at this time. See the <a href="../years.html">IOCCC
|
||
winning entries page</a> for the entries that have won the IOCCC in
|
||
the past.</p>
|
||
<p>Watch both <a href="../status.html">the IOCCC status page</a> and the
|
||
<a href="https://fosstodon.org/@ioccc"><span class="citation" data-cites="IOCCC">@IOCCC</span> mastodon feed</a> for information about
|
||
future IOCCC openings.</p>
|
||
<!-- END: the next line ends content from: inc/rules.closed.hdr -->
|
||
<!-- This is the last line modified by the tool: bin/gen-status.sh -->
|
||
<h1 id="th-international-obfuscated-c-code-contest-official-rules">28th International Obfuscated C Code Contest Official Rules</h1>
|
||
<p><strong><code>|</code></strong> Copyright © 2024 Leonid A. Broukhis and Landon Curt Noll.</p>
|
||
<p>All Rights Reserved. Permission for personal, education or non-profit use is
|
||
granted provided this this copyright and notice are included in its entirety
|
||
and remains unaltered. All other uses must receive prior permission in
|
||
writing by <a href="../contact.html">contacting the judges</a>.</p>
|
||
<h2 id="rules-version">Rules version</h2>
|
||
<p><strong><code>|</code></strong> These rules are version <strong>2024-06-15-v28</strong>.</p>
|
||
<p><strong>IMPORTANT</strong>: Be sure to read the <a href="guidelines.html">IOCCC guidelines</a>.</p>
|
||
<h3 id="change-marks">Change marks</h3>
|
||
<p><strong><code>|</code></strong> <strong>← Lines that start with this symbol indicate a change from the previous IOCCC</strong></p>
|
||
<p>Most lines (we sometimes make mistakes) that were modified since the previous
|
||
IOCCC start with the <strong><code>|</code></strong> symbol.</p>
|
||
<h1 id="obfuscate-defined">Obfuscate defined:</h1>
|
||
<p>tr.v. -cated, -cating, -cates.
|
||
<BR><BR>
|
||
<strong>1a.</strong> To render obscure.<BR>
|
||
<strong>1b.</strong> To darken.
|
||
<BR><BR>
|
||
<strong>2.</strong> To confuse: his emotions obfuscated his judgment.<BR>
|
||
[LLat. obfuscare, to darken : ob(intensive) + Lat. fuscare,<BR>
|
||
to darken < fuscus, dark.] -obfuscation n. obfuscatory adj.</p>
|
||
<h1 id="goals-of-the-contest">Goals of the Contest</h1>
|
||
<p>The goals of the IOCCC:</p>
|
||
<ul>
|
||
<li>To write the most Obscure/Obfuscated C program within the <a href="rules.html">rules</a>.</li>
|
||
<li>To show the importance of programming style, in an ironic way.</li>
|
||
<li>To stress C compilers with unusual code.</li>
|
||
<li>To illustrate some of the subtleties of the C language.</li>
|
||
<li>To provide a safe forum for poor C code. :-)</li>
|
||
</ul>
|
||
<h1 id="important-ioccc-dates">Important IOCCC dates</h1>
|
||
<p><strong><code>|</code></strong> This IOCCC runs from <strong>2024-MMM-DD HH:MM:SS UTC</strong> to <strong>202x-MMM-DD HH:MM:SS UTC</strong>.<br>
|
||
<strong><code>|</code></strong> <strong>XXX - date/time is TBD - XXX</strong></p>
|
||
<p>Until the start of this IOCCC, these <a href="rules.html">rules</a>,
|
||
<a href="guidelines.html">guidelines</a> and iocccsize.c (contained in the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry
|
||
toolkit</a> and invoked by the
|
||
<code>mkiocccentry(1)</code> tool) should be considered provisional <strong>BETA</strong> versions and
|
||
<strong>may be adjusted <em>AT ANY TIME</em></strong>.</p>
|
||
<p>When the IOCCC is open, the submission URL is:
|
||
<a href="https://submit.ioccc.org/">https://submit.ioccc.org/</a>, at all other
|
||
times that link is likely to be unresponsive.</p>
|
||
<p>Please check the <a href="../faq.html#submit">How to enter FAQ</a>
|
||
for <strong>important information</strong> on how to submit to the IOCCC.</p>
|
||
<p><strong><code>|</code></strong> The submit URL should be active on or slightly before <strong>2024-MMM-DD HH:MM:SS UTC</strong>.<br>
|
||
<strong><code>|</code></strong> <strong>XXX - date/time is TBD - XXX</strong></p>
|
||
<p>Please wait to submit your entries until after that time.</p>
|
||
<p>The official <a href="rules.html">rules</a> and <a href="guidelines.html">guidelines</a> will be
|
||
available on the <a href="../index.html">official IOCCC website</a> on or slightly before
|
||
the start of this IOCCC. The <code>mkiocccentry</code> toolkit may be obtained at any time
|
||
at the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry toolkit repo</a>.</p>
|
||
<p>Please recheck on or after the start of this IOCCC to be sure you
|
||
are using the correct versions of these items before using the IOCCC
|
||
entry submission URL.</p>
|
||
<h1 id="rules">RULES</h1>
|
||
<p>To help us with the volume of entries, we ask that you follow these rules:</p>
|
||
<h2 id="rule-0">Rule 0</h2>
|
||
<p>We need a rule 0. :-)</p>
|
||
<h2 id="rule-1">Rule 1</h2>
|
||
<p>Your entry must be a complete program.</p>
|
||
<h2 id="rule-2">Rule 2</h2>
|
||
<p>The size rule requires your entry to satisfy <strong>BOTH</strong> rule 2a and rule 2b:</p>
|
||
<h2 id="rule-2a">Rule 2a</h2>
|
||
<p>The size of your program source <strong>MUST BE <= 4096 bytes</strong> in length.</p>
|
||
<h2 id="rule-2b">Rule 2b</h2>
|
||
<p><strong><code>|</code></strong> When your program source is fed as input to the current IOCCC size
|
||
tool, and the IOCCC size tool <code>-i</code> command line option is used, the
|
||
value printed <strong>shall not exceed 2503</strong>.</p>
|
||
<p><strong><code>|</code></strong> The source to the current IOCCC size tool is found in the
|
||
<a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry tool repo</a>. If you use
|
||
the <code>mkiocccentry</code> tool (which we <strong>STRONGLY recommend you do</strong>) it will invoke
|
||
this tool before packaging your entry for submission.</p>
|
||
<h2 id="rule-3">Rule 3</h2>
|
||
<p>Submissions should be performed using the instructions outlined at:
|
||
the <a href="../faq.html#submit">How to enter FAQ</a>.</p>
|
||
<p>To submit to an open IOCCC, you must use the <a href="https://submit.ioccc.org/">IOCCC submit server</a>.</p>
|
||
<p>When the IOCCC is not open, that link will likely be unresponsive.</p>
|
||
<p><strong><code>|</code></strong> The submit URL should be active on or slightly before <strong>2024-MMM-DD HH:MM:SS UTC</strong>.<br>
|
||
<strong><code>|</code></strong> <strong>XXX - date/time is TBD - XXX</strong></p>
|
||
<p>Please wait to submit your entries until after that time.</p>
|
||
<h2 id="rule-4">Rule 4</h2>
|
||
<p>If your entry is selected as a winner, it will be modified as follows:</p>
|
||
<p>Your ‘build’ instructions will be incorporated into a Makefile.</p>
|
||
<p>Your source code will be the file <strong>prog.c</strong>. The compiled binary
|
||
will be called <strong>prog</strong>.</p>
|
||
<h2 id="rule-5">Rule 5</h2>
|
||
<p>Your entry <strong>MUST</strong> not modify the content or filename of any part of your
|
||
original entry including, but not limited to <strong>prog.c</strong>, the <strong>Makefile</strong>
|
||
(that we create from your how to build instructions), as well as any data
|
||
files you submit.</p>
|
||
<p>If you entry wishes to modify such content, it <strong>MUST</strong> first copy the
|
||
file to a new filename and then modify that copy.</p>
|
||
<h2 id="rule-6">Rule 6</h2>
|
||
<p><strong><code>|</code></strong> I am not a rule, I am a <code>free(void *human)</code>!</p>
|
||
<pre><code>| while (!understand(ioccc(rule(that(you(are(number(6)))))))) { ha_ha_ha(); }</code></pre>
|
||
<h2 id="rule-7">Rule 7</h2>
|
||
<p>The obfuscated C program must be an original work that you own.</p>
|
||
<p>You (the author(s)) must own the contents of your submission OR
|
||
you must have permission from the owner(s) to submit their content
|
||
under the following license:</p>
|
||
<p><strong><code>|</code></strong> <strong><a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0 DEED Attribution-ShareAlike 4.0 International</a></strong></p>
|
||
<p>See also rule 18.</p>
|
||
<p>If you submit any content that is owned by others, you <strong>MUST</strong>
|
||
detail that ownership (i.e., who owns what) <strong>AND document the
|
||
permission you obtained</strong>.</p>
|
||
<p>Please note that the IOCCC size tool is <strong>NOT</strong> an original work.</p>
|
||
<h2 id="rule-8">Rule 8</h2>
|
||
<p><strong><code>|</code></strong> Entries must be received prior to the end of this IOCCC which is <strong>2024-MMM-DD HH:MM:SS UTC</strong>.<br>
|
||
<strong><code>|</code></strong> <strong>XXX - date/time is TBD - XXX</strong></p>
|
||
<p>A confirmation of submission will be sent to the submitting email address
|
||
before the close of the contest.</p>
|
||
<h2 id="rule-9">Rule 9</h2>
|
||
<p><strong><code>|</code></strong> Each person may submit up to and including 10.000000 entries per contest.</p>
|
||
<p>Each entry must be submitted separately.</p>
|
||
<h2 id="rule-10">Rule 10</h2>
|
||
<p>Entries requiring human interaction to be initially compiled are not permitted.</p>
|
||
<h2 id="rule-11">Rule 11</h2>
|
||
<p>Programs that require special privileges (<code>setuid(2)</code>, <code>setgid(2)</code>, super-user,
|
||
special owner, special group, etc.) are still highly discouraged. We
|
||
do not guarantee these functions will behave as you expect on our test
|
||
platforms. If your program needs special permissions <strong>please document
|
||
them</strong> in the remarks file.</p>
|
||
<h2 id="rule-12">Rule 12</h2>
|
||
<p>Legal abuse of the rules is somewhat encouraged. An entry that, in
|
||
the opinion of the judges, violates the rules will be disqualified.
|
||
Entries that attempt to abuse the rules <strong>MUST</strong> try to justify why
|
||
their rule abuse is legal, in the remarks file.</p>
|
||
<h2 id="rule-13">Rule 13</h2>
|
||
<p>Any C source that fails to compile because of unescaped octets with
|
||
the high bit set (octet value >= 128) will be rejected.</p>
|
||
<h2 id="rule-14">Rule 14</h2>
|
||
<p>Any C source that fails to compile because of lines with trailing
|
||
control-M’s (i.e., lines with a tailing octet <code>015</code>) will be rejected.</p>
|
||
<p>Please do not put trailing control-M’s on remarks file lines.
|
||
Please check to be sure, before submitting, that you have removed
|
||
any control-M at the end of remark file lines.</p>
|
||
<h2 id="rule-15">Rule 15</h2>
|
||
<p>When you submit your entry you must have a valid email address
|
||
that can both send and receive email. The online submission
|
||
method is a two phase process that requires the use of an
|
||
approval code. This code will be emailed to you as part of
|
||
phase 1.</p>
|
||
<p>Entries submitted without a working or valid email address will
|
||
be disqualified.</p>
|
||
<p>The judges are not responsible for delays in email, please plan
|
||
enough time for one automated exchange of email as part of your
|
||
submission.</p>
|
||
<p>After your email address has been confirmed, the submission code will
|
||
be valid for submitting and editing the entry for the lifetime of the
|
||
competition.</p>
|
||
<p>See also <a href="../faq.html#submit">How may I submit to the IOCCC?</a> in the
|
||
<a href="../faq.html">FAQ</a>.</p>
|
||
<h2 id="rule-16">Rule 16</h2>
|
||
<p>You are <strong>STRONGLY</strong> encouraged to submit a previously unpublished <em>AND</em>
|
||
original entry. Submissions that are similar to previous entries are
|
||
discouraged. As we judge anonymously, submissions that have already
|
||
been published may be disqualified.</p>
|
||
<h2 id="rule-17">Rule 17</h2>
|
||
<p><strong><code>|</code></strong> The total size of your submission: the sum of the size of the program,
|
||
hints, comments, build and info files <strong>MUST</strong> be less than or equal
|
||
to 28314624 octets (27651K) in size.</p>
|
||
<p><strong><code>|</code></strong> When your submission is formed into a bzip2 compressed tarball file,
|
||
that file must than or equal 3999971 octets in size.</p>
|
||
<p><strong><code>|</code></strong> The <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry toolkit</a>
|
||
(see <code>mkiocccentry(1)</code> and <code>txzchk(1)</code>) will help you verify that your
|
||
submission conforms to this rule.</p>
|
||
<h2 id="rule-18">Rule 18</h2>
|
||
<p>The entirety of your entry must be submitted under the following license:</p>
|
||
<p><strong><code>|</code></strong> <strong><a href="https://creativecommons.org/licenses/by-sa/4.0/">CC BY-SA 4.0 DEED Attribution-ShareAlike 4.0 International</a></strong></p>
|
||
<p>You (the author(s)) <strong>MUST</strong> own the contents of your submission <strong>OR</strong>
|
||
you <strong>MUST HAVE PERMISSION</strong> from the owner(s) to submit their content.</p>
|
||
<p>You must not submit anything that cannot be submitted under that license.</p>
|
||
<h2 id="rule-19">Rule 19</h2>
|
||
<p>The remarks file must be written in markdown format. See
|
||
the Daring Fireball <a href="http://daringfireball.net/projects/markdown/basics">Markdown: Basics</a>
|
||
for more information.</p>
|
||
<p><strong><code>|</code></strong> We currently use <a href="https://pandoc.org">pandoc</a> to convert markdown to HTML.</p>
|
||
<h2 id="rule-20">Rule 20</h2>
|
||
<p>The how to build instructions must be in Makefile format. See <a href="../faq.html#make_compatibility">the FAQ about
|
||
make(1) compatibility the IOCCC
|
||
supports</a> for more details.</p>
|
||
<p>The target of the Makefile must be called <code>prog</code>. The original
|
||
C source file must be called <code>prog.c</code>.</p>
|
||
<p>To invoke the C compiler, use <code>${CC}</code>.
|
||
To invoke the C preprocessor use <code>${CPP}</code>.</p>
|
||
<p>Do not assume that <code>.</code> (the current directory) is in the <code>$PATH</code>.</p>
|
||
<p>Use a shell command syntax that is compatible with bash.</p>
|
||
<p>Assume that commands commonly found in POSIX-like / Linux-like systems
|
||
are available in the search path.</p>
|
||
<p>Do not assume any particular given value of <code>${CFLAGS}</code> or other
|
||
commonly used make variables. In other words you <strong>MUST</strong> specify the <code>CFLAGS</code>
|
||
to use.</p>
|
||
<p>See also the
|
||
<a href="https://github.com/ioccc-src/mkiocccentry/blob/master/Makefile.example">Makefile.example</a>
|
||
for help in constructing your Makefile. The <code>mkiocccentry</code>, which can be found
|
||
at the <a href="https://github.com/ioccc-src/mkiocccentry">mkiocccentry repo</a>, tries to
|
||
detect if required rules exist in your Makefile.</p>
|
||
<h2 id="rule-21">Rule 21</h2>
|
||
<p>Your entry must not create or modify files above the current directory
|
||
with the exception of the <code>/tmp</code> and the <code>/var/tmp</code> directories. Your entry
|
||
<strong>MAY</strong> create subdirectories below the current directory, or in <code>/tmp</code>,
|
||
or in <code>/var/tmp</code> provided that <code>.</code> is <strong>NOT</strong> the first octet in any
|
||
directory name or filename you submit.</p>
|
||
<h2 id="rule-22">Rule 22</h2>
|
||
<p>Catch 22:</p>
|
||
<p>Your source code, data files, remarks and program output must <strong>NOT</strong>
|
||
identify the authors of your code. The judges <strong>STRONGLY prefer</strong> to
|
||
NOT know who is submitting entries to the IOCCC.</p>
|
||
<p>Even if you are a previous IOCCC winner, catch 22 still applies.</p>
|
||
<p>Identifying the author(s) of your entry in an obvious way anywhere
|
||
within your code, data, remarks or program output (unless you are
|
||
<em>Peter Honeyman</em> or pretending to be <em>Peter Honeyman</em>) will be grounds
|
||
for disqualification of your entry.</p>
|
||
<p>Yes, Virginia, <strong>WE REALLY MEAN IT!</strong></p>
|
||
<h2 id="rule-23">Rule 23</h2>
|
||
<p>This prime rule number is reserved for future use.</p>
|
||
<h2 id="rule-24">Rule 24</h2>
|
||
<p>Even though 24 is not prime, you should still see rule #23.</p>
|
||
<h2 id="rule-25">Rule 25</h2>
|
||
<p><strong><code>|</code></strong> The IOCCC rule set needs more than 5^2 rules: see rule #26.</p>
|
||
<h2 id="rule-26">Rule 26</h2>
|
||
<p><strong><code>|</code></strong> “The quick brown fox jumps over the lazy dog”.<br>
|
||
<strong><code>|</code></strong> “Pack my box with five dozen liquor jugs.”<br>
|
||
<strong><code>|</code></strong> “How vexingly quick daft zebras jump!”<br>
|
||
<strong><code>|</code></strong> “Sphinx of black quartz, judge my vow.”<br>
|
||
<strong><code>|</code></strong> “Waltz, bad nymph, for quick jigs vex.”<br>
|
||
<strong><code>|</code></strong> “Mr. Jock, TV quiz PhD, bags few lynx.”</p>
|
||
<h2 id="rule-27">Rule 27</h2>
|
||
<p><strong><code>|</code></strong> Unless otherwise needed, rule 27 is reserved for something cubic. :-)</p>
|
||
<h2 id="rule-28">Rule 28</h2>
|
||
<p><strong><code>|</code></strong> Rule 28 is a perfect way end to the list of rules as we do not plan to have 496 rules.</p>
|
||
<h1 id="for-more-information">FOR MORE INFORMATION:</h1>
|
||
<p><strong><code>|</code></strong> For questions or comments about the contest, see <a href="../contact.html">Contacting the IOCCC</a>.</p>
|
||
<p><strong><code>|</code></strong> Be sure to review the <a href="index.html">IOCCC Rules and Guidelines</a> as
|
||
<a href="rules.html">rules</a> and the <a href="guidelines.html">guidelines</a> may (and often do) change from year to year.</p>
|
||
<p><strong><code>|</code></strong> You should be sure you have the current <a href="rules.html">rules</a> and
|
||
<a href="guidelines.html">guidelines</a> prior to submitting entries.</p>
|
||
<p><strong><code>|</code></strong> See the <a href="../news.html">Official IOCCC website news</a> for additional information.</p>
|
||
<p><strong><code>|</code></strong> For the updates and breaking IOCCC news, you are encouraged to follow
|
||
the <a href="https://fosstodon.org/@ioccc">IOCCC on Mastodon</a> account. See our
|
||
<a href="../faq.html#try_mastodon">FAQ</a> for more information. Please do note that unless
|
||
you are mentioned by us you will <strong>NOT</strong> get a notification from the app so you
|
||
should refresh the page even if you do follow us.</p>
|
||
<p><strong><code>|</code></strong> Check out the <a href="https://www.ioccc.org/index.html">Official IOCCC winner website</a> in general.</p>
|
||
<p>Leonid A. Broukhis<br>
|
||
chongo (Landon Curt Noll) <code>/\cc/\</code></p>
|
||
<hr style="width:10%;text-align:left;margin-left:0">
|
||
<p>Jump to: <a href="#">top</a>
|
||
<!-- AFTER: last line of markdown file: next/rules.md --></p>
|
||
|
||
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.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.default.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 © 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%2Fioccc-src.github.io%2Ftemp-test-ioccc%2Fnext%2Frules.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>
|
||
</p>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
<!-- END: this line ends content from: inc/footer.default.html -->
|
||
<!-- START: this line starts content from: inc/bottom.default.html -->
|
||
|
||
</body>
|
||
</html>
|
||
|
||
<!-- END: this line ends content from: inc/bottom.default.html -->
|