Merge pull request #63 from xexyl/guidelines

This commit is contained in:
Landon Curt Noll authored and GitHub committed 2025-01-22 10:47:17 -08:00
commit d3b2fc5ea5
3 files changed
+92 -51

No files matched your search

+26 -15
View File
@@ -167,21 +167,6 @@ all: data ${TARGET}
${PROG}: ${PROG}.c ${PROG}: ${PROG}.c
${CC} ${CFLAGS} ${PROG}.c -o $@ ${LDFLAGS} ${CC} ${CFLAGS} ${PROG}.c -o $@ ${LDFLAGS}
# alternative executable
#
alt: data ${ALT_TARGET}
${PROG}.alt: ${PROG}.alt.c
${CC} ${CFLAGS} ${PROG}.alt.c -o $@ ${LDFLAGS}
# data files
#
data: ${DATA}
# both all and alt
#
everything: all alt
# suggested way(s) to run the program # suggested way(s) to run the program
# #
try: ${PROG} ${DATA} try: ${PROG} ${DATA}
@@ -192,6 +177,32 @@ try: ${PROG} ${DATA}
./${PROG} some arguments ./${PROG} some arguments
# alternative executable
#
alt: data ${ALT_TARGET}
${PROG}.alt: ${PROG}.alt.c
${CC} ${CFLAGS} ${PROG}.alt.c -o $@ ${LDFLAGS}
# suggested way(s) to run alt code, if you include one
#
try.alt: ${PROG}.alt ${DATA}
@# remove these comments
@# notice how we do not assume that . is a component of the $PATH environment variable
@# you may use the try.alt.sh script if you have one
@# change this next line as needed
./${PROG}.alt some arguments
# data files
#
data: ${DATA}
# both all and alt
#
everything: all alt
############### ###############
# utility rules # utility rules
############### ###############
+32 -18
View File
@@ -461,7 +461,7 @@ writing by <a href="../contact.html">contacting the judges</a>.</p>
</div> </div>
</div> </div>
<p class="leftbar"> <p class="leftbar">
These <a href="guidelines.html">IOCCC guidelines</a> are version <strong>28.31 2025-01-18</strong>. These <a href="guidelines.html">IOCCC guidelines</a> are version <strong>28.32 2025-01-22</strong>.
</p> </p>
<p class="leftbar"> <p class="leftbar">
The <a href="guidelines.md" download="guidelines.md">markdown form of these guidelines</a> The <a href="guidelines.md" download="guidelines.md">markdown form of these guidelines</a>
@@ -529,7 +529,7 @@ considered provisional <strong>BETA</strong> versions and <strong>may be adjuste
before the contest status becomes <strong><a href="../status.html#open">open</a></strong>. before the contest status becomes <strong><a href="../status.html#open">open</a></strong>.
</p> </p>
<p class="leftbar"> <p class="leftbar">
You must <a href="register.html">register</a> in order to submit your entry to the IOCCC. You <strong>MUST</strong> <a href="register.html">register</a> in order to submit your entry to the IOCCC.
You may <a href="register.html">register</a> while the contest is either You may <a href="register.html">register</a> while the contest is either
<strong><a href="../status.html#pending">pending</a></strong> or <strong><a href="../status.html#open">open</a></strong>. <strong><a href="../status.html#pending">pending</a></strong> or <strong><a href="../status.html#open">open</a></strong>.
</p> </p>
@@ -559,7 +559,7 @@ If you do not change your <strong>Initial password</strong> in time, you will ha
Because it takes time (maybe even a few days) for an <a href="../judges.html">IOCCC judge</a> Because it takes time (maybe even a few days) for an <a href="../judges.html">IOCCC judge</a>
to process your registration and email you your initial login and password, to process your registration and email you your initial login and password,
you should <strong>MAKE SURE</strong> you give yourself enough time before the contest closes. you should <strong>MAKE SURE</strong> you give yourself enough time before the contest closes.
In other words, <strong>DO NOT WAIT UNTIL THE FINAL DAYS</strong> of the contest to register! In other words, <strong>DO NOT WAIT TO REGISTER UNTIL THE FINAL DAYS</strong>!
The <a href="../judges.html">IOCCC judges</a> are <strong>NOT</strong> responsible for delayed or lost email, The <a href="../judges.html">IOCCC judges</a> are <strong>NOT</strong> responsible for delayed or lost email,
or for those who wait until the last minute to try to register! or for those who wait until the last minute to try to register!
</p> </p>
@@ -587,7 +587,7 @@ for more information about the <code>mkiocccentry(1)</code> tool.
<p class="leftbar"> <p class="leftbar">
While the contest is <strong><a href="../status.html#open">open</a></strong>, you may modify your previously While the contest is <strong><a href="../status.html#open">open</a></strong>, you may modify your previously
uploaded submission by rebuilding your submission with the <code>mkiocccentry(1)</code> tool uploaded submission by rebuilding your submission with the <code>mkiocccentry(1)</code> tool
and then re-uploading it to the same slot no the <a href="https://submit.ioccc.org">submit server</a>. and then re-uploading it to the same slot number on the <a href="https://submit.ioccc.org">submit server</a>.
</p> </p>
<p class="leftbar"> <p class="leftbar">
To help you with this, so that you do not have to repeatedly answer all the To help you with this, so that you do not have to repeatedly answer all the
@@ -614,11 +614,11 @@ bytes.
</p> </p>
<p class="leftbar"> <p class="leftbar">
The new default way to compile submissions: <code>-std=gnu17 -O3 -g3 -Wall -Wextra -pedantic</code>. The new default way to compile submissions: <code>-std=gnu17 -O3 -g3 -Wall -Wextra -pedantic</code>.
You <strong>are encouraged</strong> to use the example Makefile here, rather than the You <strong>are encouraged</strong> to use the example Makefile here. For more details and help,
<code>mkiocccentry</code> repo. For details and help, see below in the <a href="#makefile">Makefile section</a>. see below in the <a href="#makefile">Makefile section</a>.
</p> </p>
<p class="leftbar"> <p class="leftbar">
Submissions are in the form of a single xz compressed tarball. Submissions are uploaded as a single xz compressed tarball.
</p> </p>
<p class="leftbar"> <p class="leftbar">
To assist in the formation of the xz compressed tarball for submission, use the To assist in the formation of the xz compressed tarball for submission, use the
@@ -1350,6 +1350,14 @@ to test your submission. And if your submissions wins, it makes it easier to int
the <a href="https://www.ioccc.org/index.html">Official IOCCC winner website</a>. the <a href="https://www.ioccc.org/index.html">Official IOCCC winner website</a>.
</p> </p>
<p class="leftbar"> <p class="leftbar">
We <strong>LIKE</strong> submissions that have some educational value. This does <strong>NOT</strong> mean
that your submission should not be obfuscated but the IOCCC has moved away from
the idea of spoilers. In other words, unless your submission does some kind of
encryption (or something with encryption), you should not encrypt your remarks,
say with rot13 or anything else, and it is also appreciated if your remarks have
some education value, though these are not required.
</p>
<p class="leftbar">
We <strong>LIKE</strong> submissions that use an edited version of the We <strong>LIKE</strong> submissions that use an edited version of the
<code>try.sh</code> example script (and if you have alternate code, <code>try.sh</code> example script (and if you have alternate code,
the same applies with the <code>try.alt.sh</code> script): the same applies with the <code>try.alt.sh</code> script):
@@ -1779,18 +1787,24 @@ unless you are <a href="../authors.html#Cody_Boone_Ferguson">Cody Boone Ferguson
run the risk of violating <a href="rules.html#rule7">Rule 7</a>. run the risk of violating <a href="rules.html#rule7">Rule 7</a>.
</p> </p>
<p class="leftbar"> <p class="leftbar">
Neither the <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/chkentry.c">chkentry tool source</a> Neither the <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/chkentry.c">chkentry tool
nor the <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/README.md">JSON parser and library</a> source</a> nor
nor <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrencode.c">jstrencode</a> the <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/README.md">JSON parser and
nor <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrdecode.c">jstrdecode</a> library</a>
nor
<a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrencode.c">jstrencode</a>
nor
<a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrdecode.c">jstrdecode</a>
nor any of the other <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse">jparse nor any of the other <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse">jparse
tools</a> tools</a>
are original works (see the <a href="https://github.com/xexyl/jparse/">jparse repo</a> for (see the <a href="https://github.com/xexyl/jparse/">jparse repo</a>), nor the <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/test_ioccc/fnamchk.c">fnamchk tool
the original), unless you are <a href="../authors.html#Cody_Boone_Ferguson">Cody source</a>
Boone Ferguson</a> or <a href="http://www.isthe.com/chongo/index.html">Landon Curt are original works,
Noll</a>, in which case they are original! unless you are <a href="../authors.html#Cody_Boone_Ferguson">Cody Boone Ferguson</a> or
:-) Submitting source that uses the code of these tools or library, unless you <a href="http://www.isthe.com/chongo/index.html">Landon Curt Noll</a>, in which case they
are <a href="../authors.html#Cody_Boone_Ferguson">Cody Boone Ferguson</a> or <a href="http://www.isthe.com/chongo/index.html">Landon Curt are original! :-) Submitting source that uses the code of these tools or
library, unless you are <a href="../authors.html#Cody_Boone_Ferguson">Cody Boone
Ferguson</a> or <a href="http://www.isthe.com/chongo/index.html">Landon Curt
Noll</a>, might run the risk of violating Noll</a>, might run the risk of violating
<a href="rules.html#rule7">Rule 7</a>. <a href="rules.html#rule7">Rule 7</a>.
</p> </p>
@@ -1822,7 +1836,7 @@ obfuscated, but unless you have some really clever way to compact and
obfuscate a JSON parser more than <a href="https://github.com/westes/flex">flex</a> and obfuscate a JSON parser more than <a href="https://github.com/westes/flex">flex</a> and
<a href="https://www.gnu.org/software/bison/">bison</a> you will likely not win, either <a href="https://www.gnu.org/software/bison/">bison</a> you will likely not win, either
because of the <a href="rules.html#rule2">source code size limit</a> or because it is not because of the <a href="rules.html#rule2">source code size limit</a> or because it is not
as obfuscated as the lexer/parser part of as obfuscated as the lexer/parser of
<a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse">jparse</a>. <a href="https://github.com/ioccc-src/mkiocccentry/blob/master/jparse">jparse</a>.
</p> </p>
<p>While programs that only run in a specific word size are OK, if you have <p>While programs that only run in a specific word size are OK, if you have
+34 -18
View File
@@ -49,7 +49,7 @@ Jump to: [top](#)
</div> </div>
<p class="leftbar"> <p class="leftbar">
These [IOCCC guidelines](guidelines.html) are version **28.31 2025-01-18**. These [IOCCC guidelines](guidelines.html) are version **28.32 2025-01-22**.
</p> </p>
<p class="leftbar"> <p class="leftbar">
@@ -137,7 +137,7 @@ before the contest status becomes **[open](../status.html#open)**.
</p> </p>
<p class="leftbar"> <p class="leftbar">
You must [register](register.html) in order to submit your entry to the IOCCC. You **MUST** [register](register.html) in order to submit your entry to the IOCCC.
You may [register](register.html) while the contest is either You may [register](register.html) while the contest is either
**[pending](../status.html#pending)** or **[open](../status.html#open)**. **[pending](../status.html#pending)** or **[open](../status.html#open)**.
</p> </p>
@@ -172,7 +172,7 @@ If you do not change your **Initial password** in time, you will have to [re-reg
Because it takes time (maybe even a few days) for an [IOCCC judge](../judges.html) Because it takes time (maybe even a few days) for an [IOCCC judge](../judges.html)
to process your registration and email you your initial login and password, to process your registration and email you your initial login and password,
you should **MAKE SURE** you give yourself enough time before the contest closes. you should **MAKE SURE** you give yourself enough time before the contest closes.
In other words, **DO NOT WAIT UNTIL THE FINAL DAYS** of the contest to register! In other words, **DO NOT WAIT TO REGISTER UNTIL THE FINAL DAYS**!
The [IOCCC judges](../judges.html) are **NOT** responsible for delayed or lost email, The [IOCCC judges](../judges.html) are **NOT** responsible for delayed or lost email,
or for those who wait until the last minute to try to register! or for those who wait until the last minute to try to register!
</p> </p>
@@ -205,7 +205,7 @@ for more information about the `mkiocccentry(1)` tool.
<p class="leftbar"> <p class="leftbar">
While the contest is **[open](../status.html#open)**, you may modify your previously While the contest is **[open](../status.html#open)**, you may modify your previously
uploaded submission by rebuilding your submission with the `mkiocccentry(1)` tool uploaded submission by rebuilding your submission with the `mkiocccentry(1)` tool
and then re-uploading it to the same slot no the [submit server](https://submit.ioccc.org). and then re-uploading it to the same slot number on the [submit server](https://submit.ioccc.org).
</p> </p>
<p class="leftbar"> <p class="leftbar">
@@ -238,12 +238,12 @@ bytes.
<p class="leftbar">The new default way to compile submissions: `-std=gnu17 -O3 -g3 <p class="leftbar">The new default way to compile submissions: `-std=gnu17 -O3 -g3
-Wall -Wextra -pedantic`. -Wall -Wextra -pedantic`.
You **are encouraged** to use the example Makefile here, rather than the You **are encouraged** to use the example Makefile here. For more details and help,
`mkiocccentry` repo. For details and help, see below in the [Makefile section](#makefile). see below in the [Makefile section](#makefile).
</p> </p>
<p class="leftbar"> <p class="leftbar">
Submissions are in the form of a single xz compressed tarball. Submissions are uploaded as a single xz compressed tarball.
</p> </p>
<p class="leftbar"> <p class="leftbar">
@@ -1177,6 +1177,16 @@ to test your submission. And if your submissions wins, it makes it easier to int
the [Official IOCCC winner website](https://www.ioccc.org/index.html). the [Official IOCCC winner website](https://www.ioccc.org/index.html).
</p> </p>
<p class="leftbar">
We **LIKE** submissions that have some educational value. This does **NOT** mean
that your submission should not be obfuscated but the IOCCC has moved away from
the idea of spoilers. In other words, unless your submission does some kind of
encryption (or something with encryption), you should not encrypt your remarks,
say with rot13 or anything else, and it is also appreciated if your remarks have
some education value, though these are not required.
</p>
<p class="leftbar"> <p class="leftbar">
We **LIKE** submissions that use an edited version of the We **LIKE** submissions that use an edited version of the
`try.sh` example script (and if you have alternate code, `try.sh` example script (and if you have alternate code,
@@ -1682,18 +1692,24 @@ unless you are [Cody Boone Ferguson](../authors.html#Cody_Boone_Ferguson), might
run the risk of violating [Rule 7](rules.html#rule7).</p> run the risk of violating [Rule 7](rules.html#rule7).</p>
<p class="leftbar"> <p class="leftbar">
Neither the [chkentry tool source](https://github.com/ioccc-src/mkiocccentry/blob/master/chkentry.c) Neither the [chkentry tool
nor the [JSON parser and library](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/README.md) source](https://github.com/ioccc-src/mkiocccentry/blob/master/chkentry.c) nor
nor [jstrencode](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrencode.c) the [JSON parser and
nor [jstrdecode](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrdecode.c) library](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/README.md)
nor
[jstrencode](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrencode.c)
nor
[jstrdecode](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse/jstrdecode.c)
nor any of the other [jparse nor any of the other [jparse
tools](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse) tools](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse)
are original works (see the [jparse repo](https://github.com/xexyl/jparse/) for (see the [jparse repo](https://github.com/xexyl/jparse/)), nor the [fnamchk tool
the original), unless you are [Cody source](https://github.com/ioccc-src/mkiocccentry/blob/master/test_ioccc/fnamchk.c)
Boone Ferguson](../authors.html#Cody_Boone_Ferguson) or [Landon Curt are original works,
Noll](http://www.isthe.com/chongo/index.html), in which case they are original! unless you are [Cody Boone Ferguson](../authors.html#Cody_Boone_Ferguson) or
:-) Submitting source that uses the code of these tools or library, unless you [Landon Curt Noll](http://www.isthe.com/chongo/index.html), in which case they
are [Cody Boone Ferguson](../authors.html#Cody_Boone_Ferguson) or [Landon Curt are original! :-) Submitting source that uses the code of these tools or
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 Noll](http://www.isthe.com/chongo/index.html), might run the risk of violating
[Rule 7](rules.html#rule7).</p> [Rule 7](rules.html#rule7).</p>
@@ -1727,7 +1743,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 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 [bison](https://www.gnu.org/software/bison/) you will likely not win, either
because of the [source code size limit](rules.html#rule2) or because it is not because of the [source code size limit](rules.html#rule2) or because it is not
as obfuscated as the lexer/parser part of as obfuscated as the lexer/parser of
[jparse](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse). [jparse](https://github.com/ioccc-src/mkiocccentry/blob/master/jparse).
</p> </p>