diff --git a/2015/burton/README.md b/2015/burton/README.md index 686a01e75..45c6bfb11 100644 --- a/2015/burton/README.md +++ b/2015/burton/README.md @@ -4,6 +4,10 @@ make ``` +There is an alternate version which the author discusses in their +[prog.c vs prog.alt.c](#prog.c-vs-prog.alt.c) section. See [Alternate +code](#alternate-code) below. + ## To use: @@ -89,7 +93,7 @@ written on an `iDevice`), but sanity prevailed. Printed in 8 pt Courier, it makes aesthetically pleasing 8.5 x 11 wall art. -[1]: ../../2011/hou/hint.html "Hou Qiming" +[1]: ../../2011/hou/index.html "Hou Qiming" ### prog.c vs prog.alt.c diff --git a/2015/burton/index.html b/2015/burton/index.html index 23dd62ab4..555fb173c 100644 --- a/2015/burton/index.html +++ b/2015/burton/index.html @@ -410,6 +410,9 @@ Location: US - United States of America

To build:

    make
+

There is an alternate version which the author discusses in their +prog.c vs prog.alt.c section. See Alternate +code below.

To use:

    ./prog "expression"

or:

@@ -442,7 +445,7 @@ process.

See the included man page. ;-)

Notes

This program is named calc. Onomatopoeia of sorts, in the visual realm. The -formatting was easier: Form Follows Function (although Hou did this +formatting was easier: Form Follows Function (although Hou did this better). It was tempting to call it iCalc, with i for integer (and it was written on an iDevice), but sanity prevailed.

Printed in 8 pt Courier, it makes aesthetically pleasing 8.5 x 11 wall art.

diff --git a/2015/dogon/README.md b/2015/dogon/README.md index 3f20d6f29..f4162f322 100644 --- a/2015/dogon/README.md +++ b/2015/dogon/README.md @@ -70,11 +70,8 @@ Press the ESC key. The author suggested that one change `q` to `0x82000820000000` instead of `0x820008202625a0` to see a bug that they avoided, writing: -``` - To see this bug in action change the assignment above - to q=0x82000820000000`, and look towards the negative - direction of the main tunnel. -``` +> To see this bug in action change the assignment above to `q=0x82000820000000`, +and look towards the negative direction of the main tunnel. This alt version does this for you. @@ -107,7 +104,7 @@ Can you find your way around either and understand where you are? How many function keys does your keyboard have? Can you generate very high number function keys such as F30 or F31? :-) -*Textures? We don't need no stinking textures.* +_Textures? We don't need no stinking textures._ ## Author's remarks: @@ -184,7 +181,7 @@ the following: ### Precision issues: -The entry, on purpose, (see the section about SIMD below) does not use enough +The entry, on purpose (see the section about SIMD below), does not use enough bits of precision, so sometimes the ray will miss the intersection of two voxel faces and push on through. That's why you may notice some noise along close up voxel edges. Fixing this issue would have taken the entry over the size limit diff --git a/2015/dogon/index.html b/2015/dogon/index.html index a11658587..7019082d1 100644 --- a/2015/dogon/index.html +++ b/2015/dogon/index.html @@ -442,9 +442,10 @@ again.

Alternate code:

The author suggested that one change q to 0x82000820000000 instead of 0x820008202625a0 to see a bug that they avoided, writing:

-
    To see this bug in action change the assignment above
-    to q=0x82000820000000`, and look towards the negative
-    direction of the main tunnel.
+
+

To see this bug in action change the assignment above to q=0x82000820000000, +and look towards the negative direction of the main tunnel.

+

This alt version does this for you.

Alternate build:

    make alt
@@ -519,7 +520,7 @@ the following:
    *(a&1?&C:&B)-=(.05 -a/2%2*.1)*!(a-1&4092^3920)

Precision issues:

-

The entry, on purpose, (see the section about SIMD below) does not use enough +

The entry, on purpose (see the section about SIMD below), does not use enough bits of precision, so sometimes the ray will miss the intersection of two voxel faces and push on through. That’s why you may notice some noise along close up voxel edges. Fixing this issue would have taken the entry over the size limit diff --git a/2015/duble/README.md b/2015/duble/README.md index 92105070d..7f8672166 100644 --- a/2015/duble/README.md +++ b/2015/duble/README.md @@ -8,6 +8,15 @@ There is an alternate version of this entry, discussed in the author's remarks. See [Alternate code](#alternate-code) below. +### Bugs and (Mis)features: + +The current status of this entry is: + +> **STATUS: INABIAF - please DO NOT fix** + +For more detailed information see [2015/duble in bugs.html](../../bugs.html#2015_duble). + + ## To use: ``` diff --git a/2015/duble/index.html b/2015/duble/index.html index ed8c1b358..55aa1eb7d 100644 --- a/2015/duble/index.html +++ b/2015/duble/index.html @@ -412,6 +412,12 @@ Location: FR - French Republic ( make

There is an alternate version of this entry, discussed in the author’s remarks. See Alternate code below.

+

Bugs and (Mis)features:

+

The current status of this entry is:

+
+

STATUS: INABIAF - please DO NOT fix

+
+

For more detailed information see 2015/duble in bugs.html.

To use:

    echo Some text | ./prog

Try:

diff --git a/2015/endoh3/README.md b/2015/endoh3/README.md index 656826526..304d6e33a 100644 --- a/2015/endoh3/README.md +++ b/2015/endoh3/README.md @@ -14,7 +14,7 @@ ## Try: -To see the original [mullender](%%REPO_URL%%/2015/endoh3/mullender.c) in action: +To see the original [mullender](../../1984/mullender/index.html) in action: ``` ./try.sh diff --git a/2015/endoh3/index.html b/2015/endoh3/index.html index b08ca5934..c5e8af7e2 100644 --- a/2015/endoh3/index.html +++ b/2015/endoh3/index.html @@ -413,7 +413,7 @@ Location: JP - Japan

To use:

    ./prog

Try:

-

To see the original mullender in action:

+

To see the original mullender in action:

    ./try.sh

Observe what happens when you hit enter or another character! You might even try typing out, one character at a time, 1984/mullender, and then see what it looks diff --git a/2015/mills1/README.md b/2015/mills1/README.md index 22a2fa4ae..6a981b426 100644 --- a/2015/mills1/README.md +++ b/2015/mills1/README.md @@ -76,7 +76,7 @@ From the Makefile: # NOTE: The string MUST be enclosed inside double quotes. ``` -WARNING: if you have good eye-hand coordination and too much time on your hands +**WARNING**: if you have good eye-hand coordination and too much time on your hands you might fall asleep while playing as you probably will never die in this mode. We only stopped when a reminder came through and we tried to mark it complete at the same time as playing and we almost managed to survive that. At that point we diff --git a/2015/mills1/index.html b/2015/mills1/index.html index 280788e01..c8a087066 100644 --- a/2015/mills1/index.html +++ b/2015/mills1/index.html @@ -456,7 +456,7 @@ bit easier for you:

DG='"Tap to Flap!"' # Instruction text. # Change to your native tongue. # NOTE: The string MUST be enclosed inside double quotes. -

WARNING: if you have good eye-hand coordination and too much time on your hands +

WARNING: if you have good eye-hand coordination and too much time on your hands you might fall asleep while playing as you probably will never die in this mode. We only stopped when a reminder came through and we tried to mark it complete at the same time as playing and we almost managed to survive that. At that point we diff --git a/bugs.html b/bugs.html index 4921fb4ce..93a187361 100644 --- a/bugs.html +++ b/bugs.html @@ -2961,14 +2961,22 @@ rely on the entry as the below shows. One should be able to do:

2015


+
+

2015/duble

+
+

STATUS: INABIAF - please DO NOT fix

+

Source code: 2015/duble/prog.c

+

Information: 2015/duble/index.html

+

This program is known to, in some cases, segfault, and as the judges and the +author noted this, it should not be fixed.

2015/hou

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2015/hou/prog.c

Information: 2015/hou/index.html

The author stated:

-

–

+

Hard requirements:

-

–

+

2015/howe

@@ -3008,7 +3016,7 @@ because it is the same thing as the other, just updated to use prog.alt

2015/mills2

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2015/mills2/prog.c

Information: 2015/mills2/index.html

The program doesn’t look at the header of files so if it’s passed something hat @@ -3017,19 +3025,19 @@ is not compressed data it’s likely to crash.

2015/schweikhardt

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2015/schweikhardt/prog.c

Information: 2015/schweikhardt/index.html

The program assumes that EOF is -1. This can be fixed but at this time it is uncertain if it should be.

The author also stated:

-

–

-

While the program works best when bytes/characters are octets and the -number of bits in a type is sizeof(typ) << 3, it will work correctly -on 24-bit or 36-bit systems with 9 bits/byte, or systems where -sizeof(typ) is 1 even for int and so on. On such systems, it will only -use 8 * sizeof(typ) bits per place. It does not work when CHAR_BIT <= 7.

-

–

+
+

While the program works best when bytes/characters are octets and the number +of bits in a type is sizeof(typ) << 3, it will work correctly on 24-bit or +36-bit systems with 9 bits/byte, or systems where sizeof(typ) is 1 even for +int and so on. On such systems, it will only use 8 * sizeof(typ) bits per +place. It does not work when CHAR_BIT <= 7.

+

2016

@@ -3050,7 +3058,7 @@ use 8 * sizeof(typ) bits per place. It does not work when CHA

2018/algmyr

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2018/algmyr/prog.c

Information: 2018/algmyr/index.html

The author wrote:

@@ -3069,7 +3077,7 @@ loop printing whitespace.

2018/hou

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2018/hou/prog.c

Information: 2018/hou/index.html

When you run it on a JSON file you will see something like:

@@ -3094,7 +3102,7 @@ likely see:

where [] is the cursor. When this happens if you hit enter (this is necessary or else it’ll happen again) and then exit again (ctrl-e) and run prog again it’ll be okay.

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

The author stated that if you make a typo it can happen that the boot loader can crash and halt. If this is the case type ctrl-e to quit the emulator and try again.

@@ -3109,7 +3117,7 @@ in the case of compiled code it won’t be executable).

2018/vokes

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2018/vokes/prog.c

Information: 2018/vokes/index.html

The author wrote the following:

@@ -3159,7 +3167,7 @@ this program has nothing to do with a hand.

2019/adamovsky

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/adamovsky/prog.c

Information: 2019/adamovsky/index.html

Certain input can crash this program. The file @@ -3167,7 +3175,7 @@ this program has nothing to do with a hand.

2019/burton

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/burton/prog.c

Information: 2019/burton/index.html

The author pointed out that some implementations of wc(1) show different @@ -3175,7 +3183,7 @@ values but his implementation matches that of macOS and FreeBSD.

2019/ciura

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/ciura/prog.c

Information: 2019/ciura/index.html

Cody Boone Ferguson fixed the scripts so @@ -3207,9 +3215,9 @@ in the de.sh/de.alt.sh scripts:

FAQ on “gets and fgets” for more information on the change to fgets(3).

-

2019/duble

+

2019/duble

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/duble/prog.c

Information: 2019/duble/index.html

There are two things to be aware of with this entry.

@@ -3238,7 +3246,7 @@ in the directory:

2019/endoh

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/endoh/prog.c

Information: 2019/endoh/index.html

As a backtrace quine this entry is SUPPOSED to segfault so this should not be @@ -3246,7 +3254,7 @@ touched either.

2019/karns

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/karns/prog.c

Information: 2019/karns/index.html

The author stated the following:

@@ -3276,7 +3284,7 @@ touched either.

2019/lynn

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/lynn/prog.c

Information: 2019/lynn/index.html

The author wrote that there are a number of differences from what one might @@ -3286,7 +3294,7 @@ remarks in the sections Syntax and

2019/mills

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/mills/prog.c

Information: 2019/mills/index.html

The author wrote that if you decide to change networks or use a different input @@ -3306,7 +3314,7 @@ a crash.

2019/poikola

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/poikola/prog.c

Information: 2019/poikola/index.html

This program will not validate input so it might fail or get stuck if invoked @@ -3315,7 +3323,7 @@ erroneously.

2019/yang

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2019/yang/prog.c

Information: 2019/yang/index.html

The author noted that if the program runs out of memory it is likely to crash.

@@ -3330,7 +3338,7 @@ ignored except line feeds (preserved) and tabs (expanded to 8 spaces).’

2020/burton

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2020/burton/prog.c

Information: 2020/burton/index.html

This entry is known to crash if no arg is specified. Although easy to fix it is @@ -3341,7 +3349,7 @@ either. But can you figure out why this happens?

2020/carlini

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2020/carlini/prog.c

Information: 2020/carlini/index.html

The author stated that bad things happen if the entered move is outside of the @@ -3355,7 +3363,7 @@ move.

2020/ferguson1

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2020/ferguson1/prog.c

Information: 2020/ferguson1/index.html

There are some things that might appear to be bugs but are actually features or @@ -3365,7 +3373,7 @@ things that are misinterpreted as bugs. See the

2020/giles

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2020/giles/prog.c

Information: 2020/giles/index.html

The author noted that the program only supports WAV files that have @@ -3374,7 +3382,7 @@ audio channels.

2020/otterness

-

STATUS: INABIAF - please DO NOT fix

+

STATUS: INABIAF - please DO NOT fix

Source code: 2020/otterness/prog.c

Information: 2020/otterness/index.html

The author listed the following limitations:

diff --git a/bugs.md b/bugs.md index 4e8709dfe..24bfea906 100644 --- a/bugs.md +++ b/bugs.md @@ -3704,6 +3704,17 @@ they will properly get:
+
+## 2015/duble +
+ +### STATUS: INABIAF - please **DO NOT** fix +### Source code: [2015/duble/prog.c](%%REPO_URL%%/2015/duble/prog.c) +### Information: [2015/duble/index.html](2015/duble/index.html) + +This program is known to, in some cases, segfault, and as the judges and the +author noted this, it should not be fixed. +
## 2015/hou @@ -3715,27 +3726,24 @@ they will properly get: The author stated: --- - -Hard requirements: - -* The platform must implement the `double` type as IEEE754-compliant 64-bit +> Hard requirements: +> +> * The platform must implement the `double` type as IEEE754-compliant 64-bit floating point numbers. The 80-bit intermediate format used by x87 is considered as an violation of this. The code should print an error message on such platforms. - -* The program must start with the CPU / FPU in round-to-nearest mode. - -Soft requirements: - -* The compiler must respect `volatile`. The code is formatted to warn about +> +> * The program must start with the CPU / FPU in round-to-nearest mode. +> +> Soft requirements: +> +> * The compiler must respect `volatile`. The code is formatted to warn about that, though. - -* The printed result is only correct on little-endian machines. The program +> +> * The printed result is only correct on little-endian machines. The program takes care to warn about this issue after printing an incorrect big-endian result. Error messages become garbled, though. ---
## 2015/howe @@ -3792,15 +3800,11 @@ uncertain if it should be. The author also stated: --- - -While the program works best when bytes/characters are octets and the -number of bits in a type is `sizeof(typ) << 3`, it will work correctly -on 24-bit or 36-bit systems with 9 bits/byte, or systems where -`sizeof(typ)` is 1 even for `int` and so on. On such systems, it will only -use `8 * sizeof(typ)` bits per place. It does not work when `CHAR_BIT <= 7`. - --- +> While the program works best when bytes/characters are octets and the number +of bits in a type is `sizeof(typ) << 3`, it will work correctly on 24-bit or +36-bit systems with 9 bits/byte, or systems where `sizeof(typ)` is 1 even for +`int` and so on. On such systems, it will only use `8 * sizeof(typ)` bits per +place. It does not work when `CHAR_BIT <= 7`.