checkpoint rules version 29.04 2025-11-20
Switched to "#" (hash) for headings in `rules.md`. Added "-" (dash) after the rule number and before the rule keyword. Adjusted links rules elsewhere according to the above. Ran `make quick_www` to perform the above.
This commit is contained in:
1 parent
5021fa611b
commit
ee2f499839
15 files changed
+305
-326
No files matched your search
+29
-29
@@ -159,12 +159,12 @@ See FAQs regarding:
|
||||
|
||||
Uploading a tarball not formed by `mkiocccentry(1)` puts you at a very big risk of
|
||||
violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging),
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging),
|
||||
especially as `mkiocccentry(1)` does a
|
||||
great number of things that are required, and it also runs many checks, and if
|
||||
any of those checks fail, you are at a very great risk of having your submission
|
||||
rejected for violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
|
||||
We **STRONGLY** recommend you **do** install the
|
||||
[mkiocccentry toolkit](https://github.com/ioccc-src/mkiocccentry).
|
||||
@@ -225,7 +225,7 @@ index.html](../2024/index.html):
|
||||
|
||||
<p class="leftbar">
|
||||
> **IMPORTANT HINT**: Only 3 of the 23 **IOCCC28 winners** came close to the
|
||||
[Rule 2 Size](rules.html#rule-2-size) limit.
|
||||
[Rule 2 - Size](rules.html#rule-2---size) limit.
|
||||
Large code size isn't
|
||||
everything. :-) Those submitting to future contents should **take a careful
|
||||
note** of that fact.
|
||||
@@ -239,7 +239,7 @@ the IOCCC size
|
||||
[Rule 2b Next Size](rules.html#rule-2b-net-size).
|
||||
|
||||
To check your code against
|
||||
[Rule 2 Size](rules.html#rule-2-size), use the `iocccentry(1)` tool.
|
||||
[Rule 2 - Size](rules.html#rule-2---size), use the `iocccentry(1)` tool.
|
||||
For example:
|
||||
|
||||
``` <!---sh-->
|
||||
@@ -276,7 +276,7 @@ BESM-6, and 2503 is a decimal anagram of 2053.
|
||||
Take note that this secondary limit imposed by the IOCCC size tool
|
||||
obviates some of the need to `#define` C reserved words in an effort
|
||||
to get around the size limits of
|
||||
[Rule 2 Size](rules.html#rule-2-size).
|
||||
[Rule 2 - Size](rules.html#rule-2---size).
|
||||
|
||||
Yes Virginia, **that is a hint**!
|
||||
|
||||
@@ -417,7 +417,7 @@ Jump to: [top](#)
|
||||
# `mkiocccentry`
|
||||
</div>
|
||||
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
(the `mkiocccentry(1)` rule) states that
|
||||
you **REALLY SHOULD** use the `mkiocccentry(1)` tool to package your submission tarball.
|
||||
|
||||
@@ -482,7 +482,7 @@ then you will have to specify the options (such as paths) for the tools that are
|
||||
Make sure you have
|
||||
the latest version of of the [mkiocccentry toolkit](https://github.com/ioccc-src/mkiocccentry)
|
||||
so that you do not violate
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
by mistake.
|
||||
|
||||
|
||||
@@ -527,7 +527,7 @@ execute one or more additional tools.
|
||||
</div>
|
||||
|
||||
`mkiocccentry(1)` will use code from `iocccsize(1)` which detects a number of
|
||||
issues (such as [Rule 2 Size](rules.html#rule-2-size)) that you may ignore, if you wish, as
|
||||
issues (such as [Rule 2 - Size](rules.html#rule-2---size)) that you may ignore, if you wish, as
|
||||
noted above.
|
||||
|
||||
In other words, you no longer need to run `iocccsize` manually. However, the
|
||||
@@ -631,7 +631,7 @@ do install_ the libraries from their respective repos, it/they will **not be
|
||||
used** when compiling the `mkiocccentry` tools. This is important to
|
||||
make sure that you're using the correct versions, which is also verified by
|
||||
`chksubmit` (in the JSON files created by `mkiocccentry(1)`). See
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
|
||||
<p class="leftbar">
|
||||
We **HIGHLY** recommend you install the `mkiocccentry` toolkit, however.
|
||||
@@ -678,7 +678,7 @@ page. You might just find a fun option if you do either of these!
|
||||
Of course, as `txzchk` does not extract the tarball, it is possible that if you
|
||||
manually package your submission tarball and/or find and exploit a missing
|
||||
check, you could still be violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
|
||||
<div id="extra-files">
|
||||
## Including optional and extra files
|
||||
@@ -698,7 +698,7 @@ file_. The non-extra files are considered _free files_.
|
||||
<p class="leftbar">
|
||||
Of course any dot file that is not `.auth.json` and `.info.json` will result in
|
||||
a violation of
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging),
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging),
|
||||
regardless of its depth.
|
||||
</p>
|
||||
|
||||
@@ -741,13 +741,13 @@ do the same like:
|
||||
```
|
||||
|
||||
See
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
and also the
|
||||
FAQ on "[maximum number of files](../faq.html#max-files)".
|
||||
|
||||
If you do not follow these points, you
|
||||
are at a great risk of violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
|
||||
**NOTE**: if you want to include a test-suite that requires a lot of files,
|
||||
please suggest this in your `remarks.md` and if your submission wins it can
|
||||
@@ -768,7 +768,7 @@ Jump to: [top](#)
|
||||
As an important part of its algorithm, [txzchk(1)](#txzchk) directly executes
|
||||
`fnamchk(1)`. If the filename is invalid (or the filename does not match the
|
||||
directory name of the tarball) then it is an **error** and you risk violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
Nevertheless, you can run the tool manually,
|
||||
should you wish to.
|
||||
|
||||
@@ -778,7 +778,7 @@ FAQ on "[fnamchk](../faq.html#fnamchk)".
|
||||
|
||||
It is extremely unlikely that `fnamchk(1)` reporting an invalid filename is a
|
||||
bug in `fnamchk(1)` and as such, ignoring such an issue risks violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)
|
||||
which is a big risk. Of course, using `mkiocccentry(1)`
|
||||
would prevent this from happening as it would not create such a file anyway. If
|
||||
`mkiocccentry(1)` was used it would rather suggest a bug in one of the tools and
|
||||
@@ -793,7 +793,7 @@ your submission rejected if you package your own tarball, and there are **ANY
|
||||
problems**. For instance, if `chksubmit(1)` found a problem in your `.info.json`
|
||||
file, the `mkiocccentry(1)` tool would not package it. But if you were to package
|
||||
it manually, you would be violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging).
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging).
|
||||
But even if
|
||||
everything checks out OK you should **NOT** assume that everything **IS** OK.
|
||||
|
||||
@@ -1099,7 +1099,7 @@ somehow, `txzchk(1)` will flag it as an error. When the judges run `txzchk(1)`
|
||||
on the uploaded submission compressed tarball, if anything is wrong, for
|
||||
instance if you "sneak in" any dot files or dot directories, the submission
|
||||
**WILL BE REJECTED** for violating
|
||||
[Rule 17 Packaging](rules.html#rule-17-packaging)!
|
||||
[Rule 17 - Packaging](rules.html#rule-17---packaging)!
|
||||
|
||||
You may use whatever tools you need to develop your submission, including the
|
||||
use of `git(1)` or `gh(1)`, just be sure that your submission code and your
|
||||
@@ -1436,7 +1436,7 @@ large data files to get around the source code size limit.
|
||||
<p class="leftbar">
|
||||
We do not recommend submitting [systemd](https://systemd.io) source code to the IOCCC,
|
||||
if nothing else because that code is likely to exceed
|
||||
[Rule 2 Size](rules.html#rule-2-size).
|
||||
[Rule 2 - Size](rules.html#rule-2---size).
|
||||
This isn't to say that another highly compact and obfuscated
|
||||
replacement of `init(8)` would not be an interesting submission.
|
||||
</p>
|
||||
@@ -1455,7 +1455,7 @@ and/or obfuscated way, would definitely win over the first two!
|
||||
Remember, you can submit more than one submission. See the
|
||||
[IOCCC rules](rules.html)
|
||||
for details (in particular,
|
||||
[Rule 8 Submission](rules.html#rule-8-submission)).
|
||||
[Rule 8 - Submission](rules.html#rule-8---submission)).
|
||||
|
||||
We suggest that you avoid trying for the '**smallest self-replicating**'
|
||||
source. The smallest, a [zero byte entry](../1994/smr/index.html), won in
|
||||
@@ -1600,7 +1600,7 @@ If you do `#include <curses.h>` make **CERTAIN** you link in curses (i.e.
|
||||
`-lcurses`) and not ncurses (i.e. `-lncurses`).
|
||||
</p>
|
||||
|
||||
[Rule 13 Newlines](rules.html#rule-13-newlines)
|
||||
[Rule 13 - Newlines](rules.html#rule-13---newlines)
|
||||
no longer discourages the use of UTF-8
|
||||
characters in C code.
|
||||
|
||||
@@ -1638,7 +1638,7 @@ Submitting source code that uses the contents of
|
||||
[iocccsize.c](https://github.com/ioccc-src/mkiocccentry/blob/master/iocccsize.c),
|
||||
_unless_ you are [Anthony C Howe](../authors.html#Anthony_C_Howe), might run the
|
||||
risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
The IOCCC submission tarball validator source is not an original work,
|
||||
unless you are [Cody Boone Ferguson](../authors.html#Cody_Boone_Ferguson), in
|
||||
@@ -1646,7 +1646,7 @@ which case it is original! :-) Submitting source code that uses the contents of
|
||||
[txzchk.c](https://github.com/ioccc-src/mkiocccentry/blob/master/txzchk.c),
|
||||
_unless_ you are [Cody Boone Ferguson](../authors.html#Cody_Boone_Ferguson), might
|
||||
run the risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
In addition to the above tools, none of the [mkiocccentry
|
||||
tools](https://github.com/ioccc-src/mkiocccentry), _including, **but not
|
||||
@@ -1670,7 +1670,7 @@ are original! :-) Submitting source code that uses the content of any of these
|
||||
library, _unless_ you are [Cody Boone
|
||||
Ferguson](../authors.html#Cody_Boone_Ferguson) or [Landon Curt
|
||||
Noll](http://www.isthe.com/chongo/index.html), might run the risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
And unless you are [Landon Curt Noll](https://en.wikipedia.org/wiki/Landon_Curt_Noll),
|
||||
the code in
|
||||
@@ -1679,9 +1679,9 @@ the code in
|
||||
not original works. Submitting source code that uses the contents of those
|
||||
libraries, _unless_ you [Landon Curt Noll](https://en.wikipedia.org/wiki/Landon_Curt_Noll),
|
||||
might run the risk of violating
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work).
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work).
|
||||
|
||||
[Rule 7 Original Work](rules.html#rule-7-original-work)
|
||||
[Rule 7 - Original Work](rules.html#rule-7---original-work)
|
||||
does not prohibit you from writing your own
|
||||
obfuscated versions of these tools, unless of course you are [Landon Curt
|
||||
Noll](http://www.isthe.com/chongo/index.html), in which case you _probably_
|
||||
@@ -1692,7 +1692,7 @@ tools' algorithms.
|
||||
|
||||
Even so, we do not recommend you try and submit a JSON parser due to
|
||||
the fact it will likely exceed
|
||||
[Rule 2 Size](rules.html#rule-2-size)
|
||||
[Rule 2 - Size](rules.html#rule-2---size)
|
||||
and because you likely can't beat [flex](https://github.com/westes/flex) and
|
||||
[bison](https://www.gnu.org/software/bison/) in obfuscation. This isn't to
|
||||
say that [the so-called JSON spec](https://github.com/xexyl/jparse/blob/master/json_README.md#so-called-json-spec) is not
|
||||
@@ -1700,7 +1700,7 @@ obfuscated, but unless you have some really clever way to compact and
|
||||
obfuscate a JSON parser more than [flex](https://github.com/westes/flex) and
|
||||
[bison](https://www.gnu.org/software/bison/) you will likely not win, either
|
||||
because of the
|
||||
[Rule 2 Size](rules.html#rule-2-size)
|
||||
[Rule 2 - Size](rules.html#rule-2---size)
|
||||
or because it is not
|
||||
as obfuscated as the [flex](https://github.com/westes/flex) and [bison](https://www.gnu.org/software/bison/)
|
||||
generated code of
|
||||
@@ -1794,7 +1794,7 @@ character tab stop.
|
||||
when forming your submission's `remarks.md` file. And if your submission
|
||||
contains additional markdown files, please follow those same guidelines for
|
||||
those files. See also
|
||||
[Rule 4 Files](rules.html#rule-4-files),
|
||||
[Rule 4 - Files](rules.html#rule-4---files),
|
||||
and the
|
||||
FAQ on "[markdown](../faq.html#markdown)".
|
||||
|
||||
@@ -2071,7 +2071,7 @@ or that stretches the contest [rules](rules.html) that while legal, it
|
||||
nevertheless goes against the **intent** of the [rules](rules.html).
|
||||
|
||||
Nevertheless, see
|
||||
[Rule 10 Privileges](rules.html#rule-10-privileges).
|
||||
[Rule 10 - Privileges](rules.html#rule-10---privileges).
|
||||
|
||||
|
||||
In the end, we traditionally pick one submission as '**best**'. Sometimes such
|
||||
|
||||
Reference in new issue
Block a user