fix HTML problems associated with leading ---'s

Please do not use "**---**" in markdown lines to separate sections.

This causes `pandoc(1)` to generate "**\<hr />**".

The "**\<hr />**" has no effect in standard HTML 5 and interacts
badly with unquoted attribute values.

If a horizontal line is really needed, use "**\<hr>**".

If a short line is needed, use: "**\<hr
style="width:10%;text-align:left;margin-left:0">**"
This commit is contained in:
Landon Curt Noll committed 2024-04-18 17:50:33 -07:00
1 parent 1566e64949
commit 50f55b4c6a
25 files changed
+181 -188

No files matched your search

+1 -1
View File
@@ -151,7 +151,7 @@ Here follows a description of some of the data structures and
algorithms used by AG. It is by no means complete, but it may help algorithms used by AG. It is by no means complete, but it may help
you get an idea about the general principles. you get an idea about the general principles.
--- <hr style="width:10%;text-align:left;margin-left:0">
Internally, AG represents words and sentences as arrays of 32 Internally, AG represents words and sentences as arrays of 32
4-bit integer elements. Each element represents the number of 4-bit integer elements. Each element represents the number of
+1 -1
View File
@@ -242,7 +242,7 @@ algorithms are outlined in the spoiler below.</p>
<p>Here follows a description of some of the data structures and <p>Here follows a description of some of the data structures and
algorithms used by AG. It is by no means complete, but it may help algorithms used by AG. It is by no means complete, but it may help
you get an idea about the general principles.</p> you get an idea about the general principles.</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Internally, AG represents words and sentences as arrays of 32 <p>Internally, AG represents words and sentences as arrays of 32
4-bit integer elements. Each element represents the number of 4-bit integer elements. Each element represents the number of
times a letter occurs in the word/sentence. There are 32 elements times a letter occurs in the word/sentence. There are 32 elements
+3 -3
View File
@@ -178,7 +178,7 @@ And another...
cat august.oo august.oo august.oo test.oo | ./august cat august.oo august.oo august.oo test.oo | ./august
``` ```
--- <hr style="width:10%;text-align:left;margin-left:0">
Fitting the byte code for the compiler into the initial comment Fitting the byte code for the compiler into the initial comment
was a challenge. I had to strip the compiler/interpreter of was a challenge. I had to strip the compiler/interpreter of
@@ -202,7 +202,7 @@ coder), but decompression then takes up too much code. Maybe this
would be a way to fit it all into the 1536 bytes, but I don't have would be a way to fit it all into the 1536 bytes, but I don't have
time to try it. time to try it.
--- <hr style="width:10%;text-align:left;margin-left:0">
Execution starts at `main()`. Nothing can be used before it is Execution starts at `main()`. Nothing can be used before it is
defined. `getchar()` and `putchar()` are predefined functions. defined. `getchar()` and `putchar()` are predefined functions.
@@ -271,7 +271,7 @@ Terminals are in quotes, `()` is used for bracketing.
stars: "*"* stars: "*"*
``` ```
--- <hr style="width:10%;text-align:left;margin-left:0">
Well, that is enough ranting for now. Well, that is enough ranting for now.
+3 -3
View File
@@ -235,7 +235,7 @@ level of interpretation:</p>
<pre><code> cat august.oo august.oo test.oo | ./august</code></pre> <pre><code> cat august.oo august.oo test.oo | ./august</code></pre>
<p>And another…</p> <p>And another…</p>
<pre><code> cat august.oo august.oo august.oo test.oo | ./august</code></pre> <pre><code> cat august.oo august.oo august.oo test.oo | ./august</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Fitting the byte code for the compiler into the initial comment <p>Fitting the byte code for the compiler into the initial comment
was a challenge. I had to strip the compiler/interpreter of was a challenge. I had to strip the compiler/interpreter of
a lot of functionality to bring down their sizes. The initial a lot of functionality to bring down their sizes. The initial
@@ -255,7 +255,7 @@ the code further with a better entropy coder (e.g. an arithmetic
coder), but decompression then takes up too much code. Maybe this coder), but decompression then takes up too much code. Maybe this
would be a way to fit it all into the 1536 bytes, but I don’t have would be a way to fit it all into the 1536 bytes, but I don’t have
time to try it.</p> time to try it.</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Execution starts at <code>main()</code>. Nothing can be used before it is <p>Execution starts at <code>main()</code>. Nothing can be used before it is
defined. <code>getchar()</code> and <code>putchar()</code> are predefined functions.</p> defined. <code>getchar()</code> and <code>putchar()</code> are predefined functions.</p>
<p>Below is a description of the OC grammar.</p> <p>Below is a description of the OC grammar.</p>
@@ -316,7 +316,7 @@ defined. <code>getchar()</code> and <code>putchar()</code> are predefined functi
&quot;char&quot; stars &quot;char&quot; stars
stars: &quot;*&quot;*</code></pre> stars: &quot;*&quot;*</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Well, that is enough ranting for now.</p> <p>Well, that is enough ranting for now.</p>
<!-- <!--
+2 -2
View File
@@ -118,7 +118,7 @@ reverse them. Anyone out there should have enough discipline and
rot13 shouldn't be required, really. After all, we are not children rot13 shouldn't be required, really. After all, we are not children
anymore :-) anymore :-)
--- <hr style="width:10%;text-align:left;margin-left:0">
This paragraph is not part of the author's remarks, but is a helpful This paragraph is not part of the author's remarks, but is a helpful
gift from the judges; if you read too fast to stop yourself, this should gift from the judges; if you read too fast to stop yourself, this should
@@ -126,7 +126,7 @@ give you enough time to stop, which you really need to do RIGHT NOW if
you don't want to read the spoilers, which really do spoil everything, you don't want to read the spoilers, which really do spoil everything,
we mean it. we mean it.
--- <hr style="width:10%;text-align:left;margin-left:0">
The source file needs to be present because the words are read from The source file needs to be present because the words are read from
it. The wordlist is encoded within the source using a 24 entry it. The wordlist is encoded within the source using a 24 entry
+2 -2
View File
@@ -237,13 +237,13 @@ rot13 spoilers since it is somewhat complicated on a Mac to
reverse them. Anyone out there should have enough discipline and reverse them. Anyone out there should have enough discipline and
rot13 shouldn’t be required, really. After all, we are not children rot13 shouldn’t be required, really. After all, we are not children
anymore :-)</p> anymore :-)</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>This paragraph is not part of the author’s remarks, but is a helpful <p>This paragraph is not part of the author’s remarks, but is a helpful
gift from the judges; if you read too fast to stop yourself, this should gift from the judges; if you read too fast to stop yourself, this should
give you enough time to stop, which you really need to do RIGHT NOW if give you enough time to stop, which you really need to do RIGHT NOW if
you don’t want to read the spoilers, which really do spoil everything, you don’t want to read the spoilers, which really do spoil everything,
we mean it.</p> we mean it.</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>The source file needs to be present because the words are read from <p>The source file needs to be present because the words are read from
it. The wordlist is encoded within the source using a 24 entry it. The wordlist is encoded within the source using a 24 entry
sliding dictionary where lowercase letters are offsets into the sliding dictionary where lowercase letters are offsets into the
+2 -2
View File
@@ -264,7 +264,7 @@ mind ;-)</p>
l[12] - l[14] strspn argument l[12] - l[14] strspn argument
l[34] terminator for backward decoding l[34] terminator for backward decoding
l[35] - l[998] input line</code></pre> l[35] - l[998] input line</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Selected notes: <p>Selected notes:
- We don’t need to declare <code>isalnum(3)</code> (or include ctype.h) as its implicit - We don’t need to declare <code>isalnum(3)</code> (or include ctype.h) as its implicit
declaration is correct (int argument, int result). This is not so for declaration is correct (int argument, int result). This is not so for
@@ -276,7 +276,7 @@ whereas it is not. Well, it is, but there is a sequence point in between.
- lclint 2.4b parses line 13 as <error>, whereas it is correct code. - lclint 2.4b parses line 13 as <error>, whereas it is correct code.
- lclint 2.4b is positive the second <code>while</code> loop is infinite, whereas it is - lclint 2.4b is positive the second <code>while</code> loop is infinite, whereas it is
not.</p> not.</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>.. - …. .. -. -.- - …. .. … … .–. — .. .-.. . .-. .. … – — .-. . — -… ..-. ..- … -.-. .- - . -.. - …. .- -. - …. . .–. .-. — –. .-. .- –</p> <p>.. - …. .. -. -.- - …. .. … … .–. — .. .-.. . .-. .. … – — .-. . — -… ..-. ..- … -.-. .- - . -.. - …. .- -. - …. . .–. .-. — –. .-. .- –</p>
<p>. -..- . .-. -.-. .. … . <p>. -..- . .-. -.-. .. … .
-.-. …. .- -. –. . - …. . .–. .-. — –. .-. .- – … — .. - -.. — . … -. — - … …. — ..- -</p> -.-. …. .- -. –. . - …. . .–. .-. — –. .-. .- – … — .. - -.. — . … -. — - … …. — ..- -</p>
+2 -2
View File
@@ -188,7 +188,7 @@ Summary of the use of l[999]:
l[35] - l[998] input line l[35] - l[998] input line
``` ```
--- <hr style="width:10%;text-align:left;margin-left:0">
Selected notes: Selected notes:
- We don't need to declare `isalnum(3)` (or include ctype.h) as its implicit - We don't need to declare `isalnum(3)` (or include ctype.h) as its implicit
@@ -202,7 +202,7 @@ Selected notes:
- lclint 2.4b is positive the second `while` loop is infinite, whereas it is - lclint 2.4b is positive the second `while` loop is infinite, whereas it is
not. not.
--- <hr style="width:10%;text-align:left;margin-left:0">
.. - .... .. -. -.- - .... .. ... ... .--. --- .. .-.. . .-. .. ... -- --- .-. . --- -... ..-. ..- ... -.-. .- - . -.. - .... .- -. - .... . .--. .-. --- --. .-. .- -- .. - .... .. -. -.- - .... .. ... ... .--. --- .. .-.. . .-. .. ... -- --- .-. . --- -... ..-. ..- ... -.-. .- - . -.. - .... .- -. - .... . .--. .-. --- --. .-. .- --
+1 -1
View File
@@ -293,7 +293,7 @@ Division by zero results in an IEEE Inf number.
This section explains the meaning and rationale for the This section explains the meaning and rationale for the
compile time parameters: compile time parameters:
--- <hr style="width:10%;text-align:left;margin-left:0">
``` ```
-DC=XK_Up -DC=XK_Up
+1 -1
View File
@@ -312,7 +312,7 @@ value supposedly returned by it.</p>
<h4 id="compilation-parameters-and-configuration">2.9. Compilation Parameters and Configuration</h4> <h4 id="compilation-parameters-and-configuration">2.9. Compilation Parameters and Configuration</h4>
<p>This section explains the meaning and rationale for the <p>This section explains the meaning and rationale for the
compile time parameters:</p> compile time parameters:</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<pre><code> -DC=XK_Up <pre><code> -DC=XK_Up
-DL=XK_Down -DL=XK_Down
-DO=XK_Left -DO=XK_Left
+7 -2
View File
@@ -150,8 +150,13 @@ header has a comment line for non-standard-compliant viewers (specifically, my
old HDRShop 1.0). And there is a nice text message saying "please wait...". old HDRShop 1.0). And there is a nice text message saying "please wait...".
Despite the messy look, [a.c](a.c) and [hou.c](hou.c) compile warning-free Despite the messy look, [a.c](a.c) and [hou.c](hou.c) compile warning-free
([hou.c](hou.c) even wastes 18 bytes on `#include<stdio.h>` just for `putchar(3)`). ([hou.c](hou.c) even wastes 18 bytes on `#include<stdio.h>` just for `putchar(3)`).
[a.c](a.c) compiles mostly clean in the C99/ANSI modes of clang and gcc (with `-Wall [a.c](a.c) compiles mostly clean in the C99/ANSI modes of clang and gcc (with:
--pedantic`). The only warning generated is a pedantic one: `"string constant
```
-Wall --pedantic
```
The only warning generated is a pedantic one: `"string constant
too long"`. too long"`.
+10 -40
View File
@@ -228,13 +228,7 @@ like this comment.</p>
<p>Basically, you define a geometry using volume shaders, define a camera using a <p>Basically, you define a geometry using volume shaders, define a camera using a
camera shader, and define light sources and surface reflectance properties using camera shader, and define light sources and surface reflectance properties using
material shaders.</p> material shaders.</p>
<table> <h3 id="continue-to-the-comments-before-function-a">Continue to the comments before function A</h3>
<tbody>
<tr class="odd">
<td style="text-align: left;">Continue to the comments before function A</td>
</tr>
</tbody>
</table>
<pre><code> //As an (optional) assignment, figure out what function &#39;n&#39; does. And why there is a plus sign at every EOL except the last. <pre><code> //As an (optional) assignment, figure out what function &#39;n&#39; does. And why there is a plus sign at every EOL except the last.
n]#=1+ n]#=1+
x=X+1/2+ x=X+1/2+
@@ -251,7 +245,7 @@ material shaders.</p>
C=C#d+3*9+ C=C#d+3*9+
#=d+ #=d+
R=0#n</code></pre> R=0#n</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>The function <code>A</code> initializes global settings:</p> <p>The function <code>A</code> initializes global settings:</p>
<pre><code> G -- Image width, in pixels <pre><code> G -- Image width, in pixels
H -- Image height, in pixels H -- Image height, in pixels
@@ -284,13 +278,7 @@ in China and my parents were planning to renovate their apartment. I rendered
the image to tell my mom how ridiculous her starry-sky wall paper would look the image to tell my mom how ridiculous her starry-sky wall paper would look
like if she used it on every single wall. She ends up using it on just one wall, like if she used it on every single wall. She ends up using it on just one wall,
the one facing my bed, to thank me for the effort.</p> the one facing my bed, to thank me for the effort.</p>
<table> <h3 id="continue-to-the-comments-before-function-a-1">Continue to the comments before function a</h3>
<tbody>
<tr class="odd">
<td style="text-align: left;">Continue to the comments before function a</td>
</tr>
</tbody>
</table>
<pre><code> //As a bonus, find out what the first line does <pre><code> //As a bonus, find out what the first line does
A]#=#-#;&quot;=7:0-p+^;#=&quot;+ A]#=#-#;&quot;=7:0-p+^;#=&quot;+
R=n+ R=n+
@@ -302,7 +290,7 @@ the one facing my bed, to thank me for the effort.</p>
J=1/2+ J=1/2+
C=p+1+ C=p+1+
U=w+w+w</code></pre> U=w+w+w</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>The function <code>a</code> is the camera shader, which, well, generates the camera ray. <p>The function <code>a</code> is the camera shader, which, well, generates the camera ray.
It’s supposed to return the ray in variables <code>UVWXYZ</code> and <code>ABCDEF</code> (that may It’s supposed to return the ray in variables <code>UVWXYZ</code> and <code>ABCDEF</code> (that may
sound like a lot of variables, but it really isn’t that much).</p> sound like a lot of variables, but it really isn’t that much).</p>
@@ -325,13 +313,7 @@ happen. Wall up everything.</p>
explained in the material shaders part. For now, just put in:</p> explained in the material shaders part. For now, just put in:</p>
<pre><code> A=0;B=0;C=0 <pre><code> A=0;B=0;C=0
D=1;E=1;F=1</code></pre> D=1;E=1;F=1</code></pre>
<table> <h3 id="continue-to-the-comments-before-function-1">Continue to the comments before function 1</h3>
<tbody>
<tr class="odd">
<td style="text-align: left;">Continue to the comments before function 1</td>
</tr>
</tbody>
</table>
<pre><code> a]R=0+ <pre><code> a]R=0+
X=5:5+ X=5:5+
Y=5:5+ Y=5:5+
@@ -355,7 +337,7 @@ explained in the material shaders part. For now, just put in:</p>
W=p*8+ W=p*8+
A=0;B=0;C=0+ A=0;B=0;C=0+
D=1;E=1;F=1</code></pre> D=1;E=1;F=1</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>The numbered functions define materials, i.e., surface reflectance properties. <p>The numbered functions define materials, i.e., surface reflectance properties.
As the name suggests, the shader simulates ray-surface interaction. It’s done by As the name suggests, the shader simulates ray-surface interaction. It’s done by
updating <code>UVWXYZABCDEF</code>, of course.</p> updating <code>UVWXYZABCDEF</code>, of course.</p>
@@ -378,13 +360,7 @@ same if you use a RGB texture. And yes, that is the what the second <code>sqrt(3
<p>Going beyond colors, to define a shiny or dull surface one needs more maths, and <p>Going beyond colors, to define a shiny or dull surface one needs more maths, and
optics. The jargon for this is <code>BRDF</code> (Bidirectional Reflectance Distribution optics. The jargon for this is <code>BRDF</code> (Bidirectional Reflectance Distribution
Function) importance sampling. Let’s continue to function <code>o</code>.</p> Function) importance sampling. Let’s continue to function <code>o</code>.</p>
<table> <h3 id="continue-to-the-comments-before-function-o">Continue to the comments before function o</h3>
<tbody>
<tr class="odd">
<td style="text-align: left;">Continue to the comments before function o</td>
</tr>
</tbody>
</table>
<pre><code> //This function computes the starred wallpaper <pre><code> //This function computes the starred wallpaper
//Original color: 0.36 0.714285 0.8 //Original color: 0.36 0.714285 0.8
1]R=o+ 1]R=o+
@@ -411,7 +387,7 @@ Function) importance sampling. Let’s continue to function <code>o</code>.</p>
E=E*4/7+ E=E*4/7+
d=I#2/5+ d=I#2/5+
F=F*d</code></pre> F=F*d</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Function <code>o</code> defines a diffuse (that is, dull) surface. To define reflectance <p>Function <code>o</code> defines a diffuse (that is, dull) surface. To define reflectance
properties like this, one needs to sample an outgoing ray direction, based on properties like this, one needs to sample an outgoing ray direction, based on
the incoming direction and the surface normal. It’s called importance sampling, the incoming direction and the surface normal. It’s called importance sampling,
@@ -434,13 +410,7 @@ directly model the
<a href="https://en.wikipedia.org/wiki/Mesoscopic_physics">mesoscopic</a> detail. Shader <a href="https://en.wikipedia.org/wiki/Mesoscopic_physics">mesoscopic</a> detail. Shader
<code>D</code> in this file produces a bunch of dense, tiny spikes to simulate a fluffy <code>D</code> in this file produces a bunch of dense, tiny spikes to simulate a fluffy
appearance.</p> appearance.</p>
<table> <h3 id="continue-to-the-eof">Continue to the EOF</h3>
<tbody>
<tr class="odd">
<td style="text-align: left;">Continue to the EOF</td>
</tr>
</tbody>
</table>
<pre><code> //diffuse ray generation <pre><code> //diffuse ray generation
o]R=0+ o]R=0+
u=5:5+ u=5:5+
@@ -538,7 +508,7 @@ appearance.</p>
y=4:#/7+ y=4:#/7+
#=#-y*7+ #=#-y*7+
C=7#C</code></pre> C=7#C</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>The last line, well, is the output filename. Just remember to throw in two <code>]</code>s <p>The last line, well, is the output filename. Just remember to throw in two <code>]</code>s
and don’t put a newline after it.</p> and don’t put a newline after it.</p>
<pre><code> ]]example.ppm</code></pre> <pre><code> ]]example.ppm</code></pre>
+10 -22
View File
@@ -136,9 +136,7 @@ camera shader, and define light sources and surface reflectance properties using
material shaders. material shaders.
------------------------------------------- ### Continue to the comments before function A
Continue to the comments before function A
-------------------------------------------
``` ```
@@ -160,7 +158,7 @@ Continue to the comments before function A
R=0#n R=0#n
``` ```
------------------------------------------- <hr style="width:10%;text-align:left;margin-left:0">
The function `A` initializes global settings: The function `A` initializes global settings:
@@ -204,9 +202,7 @@ like if she used it on every single wall. She ends up using it on just one wall,
the one facing my bed, to thank me for the effort. the one facing my bed, to thank me for the effort.
------------------------------------------- ### Continue to the comments before function a
Continue to the comments before function a
-------------------------------------------
``` ```
//As a bonus, find out what the first line does //As a bonus, find out what the first line does
@@ -222,8 +218,7 @@ Continue to the comments before function a
U=w+w+w U=w+w+w
``` ```
<hr style="width:10%;text-align:left;margin-left:0">
-------------------------------------------
The function `a` is the camera shader, which, well, generates the camera ray. The function `a` is the camera shader, which, well, generates the camera ray.
It's supposed to return the ray in variables `UVWXYZ` and `ABCDEF` (that may It's supposed to return the ray in variables `UVWXYZ` and `ABCDEF` (that may
@@ -256,9 +251,7 @@ explained in the material shaders part. For now, just put in:
D=1;E=1;F=1 D=1;E=1;F=1
``` ```
------------------------------------------- ### Continue to the comments before function 1
Continue to the comments before function 1
-------------------------------------------
``` ```
a]R=0+ a]R=0+
@@ -286,8 +279,7 @@ Continue to the comments before function 1
D=1;E=1;F=1 D=1;E=1;F=1
``` ```
<hr style="width:10%;text-align:left;margin-left:0">
--------------------------------------------------------
The numbered functions define materials, i.e., surface reflectance properties. The numbered functions define materials, i.e., surface reflectance properties.
As the name suggests, the shader simulates ray-surface interaction. It's done by As the name suggests, the shader simulates ray-surface interaction. It's done by
@@ -318,9 +310,7 @@ optics. The jargon for this is `BRDF` (Bidirectional Reflectance Distribution
Function) importance sampling. Let's continue to function `o`. Function) importance sampling. Let's continue to function `o`.
------------------------------------------- ### Continue to the comments before function o
Continue to the comments before function o
-------------------------------------------
``` ```
//This function computes the starred wallpaper //This function computes the starred wallpaper
@@ -351,7 +341,7 @@ Continue to the comments before function o
F=F*d F=F*d
``` ```
------------------------------------------- <hr style="width:10%;text-align:left;margin-left:0">
Function `o` defines a diffuse (that is, dull) surface. To define reflectance Function `o` defines a diffuse (that is, dull) surface. To define reflectance
properties like this, one needs to sample an outgoing ray direction, based on properties like this, one needs to sample an outgoing ray direction, based on
@@ -385,9 +375,7 @@ appearance.
------------------------------------------- ### Continue to the EOF
Continue to the EOF
-------------------------------------------
``` ```
//diffuse ray generation //diffuse ray generation
@@ -489,7 +477,7 @@ Continue to the EOF
C=7#C C=7#C
``` ```
------------------------------------------- <hr style="width:10%;text-align:left;margin-left:0">
The last line, well, is the output filename. Just remember to throw in two `]`s The last line, well, is the output filename. Just remember to throw in two `]`s
and don't put a newline after it. and don't put a newline after it.
+3 -1
View File
@@ -264,8 +264,10 @@ header has a comment line for non-standard-compliant viewers (specifically, my
old HDRShop 1.0). And there is a nice text message saying “please wait…”. old HDRShop 1.0). And there is a nice text message saying “please wait…”.
Despite the messy look, <a href="a.c">a.c</a> and <a href="hou.c">hou.c</a> compile warning-free Despite the messy look, <a href="a.c">a.c</a> and <a href="hou.c">hou.c</a> compile warning-free
(<a href="hou.c">hou.c</a> even wastes 18 bytes on <code>#include&lt;stdio.h&gt;</code> just for <code>putchar(3)</code>). (<a href="hou.c">hou.c</a> even wastes 18 bytes on <code>#include&lt;stdio.h&gt;</code> just for <code>putchar(3)</code>).
<a href="a.c">a.c</a> compiles mostly clean in the C99/ANSI modes of clang and gcc (with <code>-Wall --pedantic</code>). The only warning generated is a pedantic one: <code>"string constant too long"</code>.</li> <a href="a.c">a.c</a> compiles mostly clean in the C99/ANSI modes of clang and gcc (with:</li>
</ul> </ul>
<pre><code>-Wall --pedantic</code></pre>
<p>The only warning generated is a pedantic one: <code>"string constant too long"</code>.</p>
<h3 id="comments-and-why-obfuscated">Comments and why obfuscated</h3> <h3 id="comments-and-why-obfuscated">Comments and why obfuscated</h3>
<ul> <ul>
<li>Both the compression and the rendering use mathematically involved algorithms. <li>Both the compression and the rendering use mathematically involved algorithms.
+5 -1
View File
@@ -341,7 +341,11 @@ The following reserved word files are included:
NB: The keyword file used in this code is derived from the list in [iocccsize.c](../../2018/iocccsize.c), NB: The keyword file used in this code is derived from the list in [iocccsize.c](../../2018/iocccsize.c),
which is neither complete (`#define`, `#ifndef`, `#undef` are missing which is neither complete (`#define`, `#ifndef`, `#undef` are missing
-- yes, Virginia knows about `#define` omitted on purpose),
```
yes, Virginia knows about `#define` omitted on purpose
``
nor correct (many more are added: `I`, `true`, `bool`, `compl`, ...): nor correct (many more are added: `I`, `true`, `bool`, `compl`, ...):
``` <!---sh--> ``` <!---sh-->
+66 -47
View File
@@ -399,56 +399,75 @@ the IOJCC trash can.</p>
<li><a href="ioccc.kw.freq">ioccc.kw.freq</a> c11 + additional words, sorted on frequency of occurrence in IOCCC entries</li> <li><a href="ioccc.kw.freq">ioccc.kw.freq</a> c11 + additional words, sorted on frequency of occurrence in IOCCC entries</li>
</ul> </ul>
<p>NB: The keyword file used in this code is derived from the list in <a href="../../2018/iocccsize.c">iocccsize.c</a>, <p>NB: The keyword file used in this code is derived from the list in <a href="../../2018/iocccsize.c">iocccsize.c</a>,
which is neither complete (<code>#define</code>, <code>#ifndef</code>, <code>#undef</code> are missing which is neither complete (<code>#define</code>, <code>#ifndef</code>, <code>#undef</code> are missing</p>
– yes, Virginia knows about <code>#define</code> omitted on purpose), <pre><code>yes, Virginia knows about `#define` omitted on purpose
nor correct (many more are added: <code>I</code>, <code>true</code>, <code>bool</code>, <code>compl</code>, …):</p> ``
<pre><code> (sed -n &#39;1p&#39; c11; sed -n &#39;2,$p&#39; ioccc.kw.freq | sort) | comm -3 - c11</code></pre>
<p>That is an obfuscated way to say “diff”. But it also more clearly shows the, um, diffs.</p> nor correct (many more are added: `I`, `true`, `bool`, `compl`, ...):
<p>The usage string is similarly externalized, providing a better usability string than </code></pre>
the limits would otherwise allow. If this is considered bending the rules too far, <p>(sed -n ‘1p’ c11; sed -n ‘2,$p’ ioccc.kw.freq | sort) | comm -3 - c11</p>
just <code>-DU=O</code> to get a passible, if cryptic, usage message using no additional octets <pre><code>
That is an obfuscated way to say &quot;diff&quot;. But it also more clearly shows the, um, diffs.
The usage string is similarly externalized, providing a better usability string than
the limits would otherwise allow. If this is considered bending the rules too far,
just `-DU=O` to get a passible, if cryptic, usage message using no additional octets
than without the define. than without the define.
This also allows the builder to configure the amount of help a utility should provide This also allows the builder to configure the amount of help a utility should provide
(<a href="https://www.youtube.com/watch?v=VU0GYSA1POs" title="Ants">you want a manpage? Because that’s how you get a manpage.</a>) – a rather ([you want a manpage? Because that&#39;s how you get a manpage.][5]) -- a rather
significant point of contention made moot.</p> significant point of contention made moot.
<p>There is definitely abuse of the Rule2 counter, exploiting a “feature” of
<code>iocccsize</code>: <code>iocccsize</code> does not Rule2 count <code>{</code>, <code>}</code> and <code>;</code> when followed by
whitespace – even within a string! Thus: Freecode, a simple, uncounted, highly
obfuscated encoding of a central part of this program. (The reserved word list
is not Freecoded, both because it is useful apart from the program, and because
Freecode is not entirely free.)</p>
<ul>
<li>Some restrictions apply. Not approved for all uses. Some assembly required.</li>
</ul>
<h3 id="compilation">Compilation:</h3>
<p>The code is ANSI compliant, but it does have a string longer than 509 characters.
It has been tested on OSX and Linux, Clang and GCC.</p>
<p>The code uses trigraphs, ironically: it parses trigraphs with trigraph code.
Because that’s funny. And it remains obscure after, so trigraphs are not used
for obfuscation. Thus <code>-trigraphs -Wno-trigraphs</code> (which is also humorous).</p>
<p>It’s obfuscated C. Thus <code>-Wno-parentheses -Wno-empty-body -Wno-char-subscripts</code>.</p>
<p>The code uses <code>unsigned char</code>s, but C strings are <code>signed</code>. Thus <code>-Wno-pointer-sign</code>.
NB: This is <em>not</em> a portability concern, the one string holds only printable ASCII characters.</p>
<p>Thus:</p>
<pre><code> cc -ansi -Wall -trigraphs -Wno-trigraphs -Wno-parentheses -Wno-empty-body -Wno-char-subscripts -Wno-pointer-sign -DU=O -DW=\&quot;keywords\&quot; -o prog prog.c</code></pre>
<h3 id="coda">Coda:</h3>
<p><a href="../../authors.html#Cody_Boone_Ferguson">Cody Boone Ferguson</a> was relentless in his pursuit of bugs.
Thanks to his reports, the version of <a href="unob.sh">unob.sh</a> is stronger,
<code>tac</code> groks digraphs, <a href="tokenfix.sh">tokenfix.sh</a> corrects for missing digraphs
in <a href="prog.c">prog.c</a>, and the program <a href="manpage.sh">manpage.sh</a> was added to the corpus.</p>
<p><a href="manpage.sh">manpage.sh</a> is a useful program that turns ASCII versions of man
pages (e.g. <a href="tac.man">tac.man</a>) into real man pages. It works for C and C-like
languages, command lines, and was designed to handle man page sections 1-8. It
works well on most inputs, but tends to need some raw nroff for more fancy
constructions, such as combined arguments (e.g. the <code>-r</code> and <code>-s</code> arguments to tac
are not recognised when written as <code>-rs</code> in prose).</p>
<p>Try:</p>
<pre><code> ./manpage.sh tac
./manpage.sh -h There is definitely abuse of the Rule2 counter, exploiting a &quot;feature&quot; of
./manpage.sh -h | ./manpage.sh `iocccsize`: `iocccsize` does not Rule2 count `{`, `}` and `;` when followed by
./manpage.sh -h | ./manpage.sh -R | less whitespace -- even within a string! Thus: Freecode, a simple, uncounted, highly
./manpage.sh -h | ./manpage.sh -P | lpr</code></pre> obfuscated encoding of a central part of this program. (The reserved word list
is not Freecoded, both because it is useful apart from the program, and because
Freecode is not entirely free.)
* Some restrictions apply. Not approved for all uses. Some assembly required.
[5]: https://www.youtube.com/watch?v=VU0GYSA1POs &quot;Ants&quot;
### Compilation:
The code is ANSI compliant, but it does have a string longer than 509 characters.
It has been tested on OSX and Linux, Clang and GCC.
The code uses trigraphs, ironically: it parses trigraphs with trigraph code.
Because that&#39;s funny. And it remains obscure after, so trigraphs are not used
for obfuscation. Thus `-trigraphs -Wno-trigraphs` (which is also humorous).
It&#39;s obfuscated C. Thus `-Wno-parentheses -Wno-empty-body -Wno-char-subscripts`.
The code uses `unsigned char`s, but C strings are `signed`. Thus `-Wno-pointer-sign`.
NB: This is *not* a portability concern, the one string holds only printable ASCII characters.
Thus:
</code></pre>
<p>cc -ansi -Wall -trigraphs -Wno-trigraphs -Wno-parentheses -Wno-empty-body -Wno-char-subscripts -Wno-pointer-sign -DU=O -DW="keywords" -o prog prog.c</p>
<pre><code>
### Coda:
[Cody Boone Ferguson](../../authors.html#Cody_Boone_Ferguson) was relentless in his pursuit of bugs.
Thanks to his reports, the version of [unob.sh](unob.sh) is stronger,
`tac` groks digraphs, [tokenfix.sh](tokenfix.sh) corrects for missing digraphs
in [prog.c](prog.c), and the program [manpage.sh](manpage.sh) was added to the corpus.
[manpage.sh](manpage.sh) is a useful program that turns ASCII versions of man
pages (e.g. [tac.man](tac.man)) into real man pages. It works for C and C-like
languages, command lines, and was designed to handle man page sections 1-8. It
works well on most inputs, but tends to need some raw nroff for more fancy
constructions, such as combined arguments (e.g. the `-r` and `-s` arguments to tac
are not recognised when written as `-rs` in prose).
Try:
</code></pre>
<p>./manpage.sh tac</p>
<p>./manpage.sh -h
./manpage.sh -h | ./manpage.sh
./manpage.sh -h | ./manpage.sh -R | less
./manpage.sh -h | ./manpage.sh -P | lpr
```</p>
<p>NOTE: in 2023 the <code>tac.man</code> was updated to proper man format and renamed <p>NOTE: in 2023 the <code>tac.man</code> was updated to proper man format and renamed
<a href="tac.1">tac.1</a>.</p> <a href="tac.1">tac.1</a>.</p>
<!-- <!--
+1 -1
View File
@@ -791,7 +791,7 @@ those friends and coworkers who had to listen to me complain about obscure
corner-case bugs in my code. The obsession is over, at least until next corner-case bugs in my code. The obsession is over, at least until next
time... time...
------------------------------------------------------------------------------- <hr style="width:10%;text-align:left;margin-left:0">
[1]: ../../1984/mullender/mullender.c "mullender.c" [1]: ../../1984/mullender/mullender.c "mullender.c"
[2]: http://minnie.tuhs.org/cgi-bin/utree.pl?file=2.9BSD "2.9 BSD" [2]: http://minnie.tuhs.org/cgi-bin/utree.pl?file=2.9BSD "2.9 BSD"
+1 -1
View File
@@ -758,7 +758,7 @@ to queries about how I was spending my free time. Similarly, I apologise to
those friends and coworkers who had to listen to me complain about obscure those friends and coworkers who had to listen to me complain about obscure
corner-case bugs in my code. The obsession is over, at least until next corner-case bugs in my code. The obsession is over, at least until next
time…</p> time…</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<!-- <!--
Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved. Copyright © 1984-2024 by Landon Curt Noll. All Rights Reserved.
+2 -2
View File
@@ -54,7 +54,7 @@ Alternatively, if you want to change the size, do something like:
The author provided us with the following table for use: The author provided us with the following table for use:
--- <hr style="width:10%;text-align:left;margin-left:0">
* **Arrow keys**: move cursor. * **Arrow keys**: move cursor.
* `p` key: enter *pen* mode (type **p** again to return to the default *move* * `p` key: enter *pen* mode (type **p** again to return to the default *move*
@@ -76,7 +76,7 @@ After editing the file and quitting, try:
i.e. execute the file. i.e. execute the file.
--- <hr style="width:10%;text-align:left;margin-left:0">
WARNING: if the file is deleted it might lock any session still in use. These WARNING: if the file is deleted it might lock any session still in use. These
will have to be killed from another shell session or by closing the terminal tab will have to be killed from another shell session or by closing the terminal tab
+2 -2
View File
@@ -171,7 +171,7 @@ See <a href="#alternate-code">Alternate code</a> below if you are curious.</p>
<p>Alternatively, if you want to change the size, do something like:</p> <p>Alternatively, if you want to change the size, do something like:</p>
<pre><code> make clobber LINES=20 COLUMNS=20 all</code></pre> <pre><code> make clobber LINES=20 COLUMNS=20 all</code></pre>
<p>The author provided us with the following table for use:</p> <p>The author provided us with the following table for use:</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<ul> <ul>
<li><strong>Arrow keys</strong>: move cursor.</li> <li><strong>Arrow keys</strong>: move cursor.</li>
<li><code>p</code> key: enter <em>pen</em> mode (type <strong>p</strong> again to return to the default <em>move</em> <li><code>p</code> key: enter <em>pen</em> mode (type <strong>p</strong> again to return to the default <em>move</em>
@@ -186,7 +186,7 @@ the editor.</p>
<p>After editing the file and quitting, try:</p> <p>After editing the file and quitting, try:</p>
<pre><code> /tmp/drawing</code></pre> <pre><code> /tmp/drawing</code></pre>
<p>i.e. execute the file.</p> <p>i.e. execute the file.</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>WARNING: if the file is deleted it might lock any session still in use. These <p>WARNING: if the file is deleted it might lock any session still in use. These
will have to be killed from another shell session or by closing the terminal tab will have to be killed from another shell session or by closing the terminal tab
(in other words don’t do this from the console!). If the file cannot be opened (in other words don’t do this from the console!). If the file cannot be opened
+13 -9
View File
@@ -398,19 +398,23 @@ with `RNN(h, x)` defined as above. Each RNN module has its own set of
parameters and its own hidden state vector. This will improve the network's parameters and its own hidden state vector. This will improve the network's
performance, at the cost of a much larger parameter space. performance, at the cost of a much larger parameter space.
--- <hr style="width:10%;text-align:left;margin-left:0">
**IMPORTANT NOTE**: Since OMLET uses the system stack for network storage, **IMPORTANT NOTE**:
```
Since OMLET uses the system stack for network storage,
larger networks may cause OMLET to crash (typically with a message like larger networks may cause OMLET to crash (typically with a message like
`Segmentation fault`) unless the system stack size is first increased. Segmentation fault) unless the system stack size is first increased.
The exact command for doing so depends on your shell and your system's The exact command for doing so depends on your shell and your system's
hard limits. On `sh`/`ksh`/`bash` shells, you can view the hard limit hard limits. On sh/ksh/bash shells, you can view the hard limit
with `ulimit -Hs` and set it with `ulimit -s 65532` (replacing `65532` with ulimit -Hs and set it with ulimit -s 65532 (replacing 65532
with the actual hard limit). On `csh`/`tcsh` shells, you can view with the actual hard limit). On csh/tcsh shells, you can view
the hard limit with `limit -h stacksize` and set it with the hard limit with limit -h stacksize and set it with
`limit stacksize 65532` (replacing `65532` with the actual hard limit). limit stacksize 65532 (replacing 65532 with the actual hard limit).
```
--- <hr style="width:10%;text-align:left;margin-left:0">
You can try the deeper network by doing You can try the deeper network by doing
+11 -10
View File
@@ -435,17 +435,18 @@ other:</p>
<p>with <code>RNN(h, x)</code> defined as above. Each RNN module has its own set of <p>with <code>RNN(h, x)</code> defined as above. Each RNN module has its own set of
parameters and its own hidden state vector. This will improve the network’s parameters and its own hidden state vector. This will improve the network’s
performance, at the cost of a much larger parameter space.</p> performance, at the cost of a much larger parameter space.</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p><strong>IMPORTANT NOTE</strong>: Since OMLET uses the system stack for network storage, <p><strong>IMPORTANT NOTE</strong>:</p>
<pre><code>Since OMLET uses the system stack for network storage,
larger networks may cause OMLET to crash (typically with a message like larger networks may cause OMLET to crash (typically with a message like
<code>Segmentation fault</code>) unless the system stack size is first increased. Segmentation fault) unless the system stack size is first increased.
The exact command for doing so depends on your shell and your system’s The exact command for doing so depends on your shell and your system&#39;s
hard limits. On <code>sh</code>/<code>ksh</code>/<code>bash</code> shells, you can view the hard limit hard limits. On sh/ksh/bash shells, you can view the hard limit
with <code>ulimit -Hs</code> and set it with <code>ulimit -s 65532</code> (replacing <code>65532</code> with ulimit -Hs and set it with ulimit -s 65532 (replacing 65532
with the actual hard limit). On <code>csh</code>/<code>tcsh</code> shells, you can view with the actual hard limit). On csh/tcsh shells, you can view
the hard limit with <code>limit -h stacksize</code> and set it with the hard limit with limit -h stacksize and set it with
<code>limit stacksize 65532</code> (replacing <code>65532</code> with the actual hard limit).</p> limit stacksize 65532 (replacing 65532 with the actual hard limit).</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>You can try the deeper network by doing</p> <p>You can try the deeper network by doing</p>
<pre><code> make rnn2</code></pre> <pre><code> make rnn2</code></pre>
<p>(or even <code>make rnn3</code> if you want a three-layer RNN) and train it with</p> <p>(or even <code>make rnn3</code> if you want a three-layer RNN) and train it with</p>
+2 -2
View File
@@ -36,7 +36,7 @@ way it works too fast regardless of the context length, and it's much less fun.
The author wrote in reply: The author wrote in reply:
--- <hr style="width:10%;text-align:left;margin-left:0">
Wow, amazing! Very fast, but there is a drawback to randomness. Wow, amazing! Very fast, but there is a drawback to randomness.
If some string only appears after half the input, the first instance If some string only appears after half the input, the first instance
@@ -56,7 +56,7 @@ Example:
-- Author -- Author
``` ```
--- <hr style="width:10%;text-align:left;margin-left:0">
Try using the same random seed and varying the context size. Try using the same random seed and varying the context size.
+2 -2
View File
@@ -167,7 +167,7 @@ context length decreases:</p>
the (still non-standard, for some reason) library function <code>memmem()</code>, but that the (still non-standard, for some reason) library function <code>memmem()</code>, but that
way it works too fast regardless of the context length, and it’s much less fun.</p> way it works too fast regardless of the context length, and it’s much less fun.</p>
<p>The author wrote in reply:</p> <p>The author wrote in reply:</p>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Wow, amazing! Very fast, but there is a drawback to randomness. <p>Wow, amazing! Very fast, but there is a drawback to randomness.
If some string only appears after half the input, the first instance If some string only appears after half the input, the first instance
of this string will have a 50% chance of occurrence. of this string will have a 50% chance of occurrence.
@@ -179,7 +179,7 @@ Example:</p>
# more ones in output</code></pre> # more ones in output</code></pre>
<pre><code> But this will happen very rarely on real data. <pre><code> But this will happen very rarely on real data.
-- Author</code></pre> -- Author</code></pre>
<hr /> <hr style="width:10%;text-align:left;margin-left:0">
<p>Try using the same random seed and varying the context size.</p> <p>Try using the same random seed and varying the context size.</p>
<p>BTW: what on Middle-earth is <code>lámatyávë</code>? It’s Quenya, one of the languages of <p>BTW: what on Middle-earth is <code>lámatyávë</code>? It’s Quenya, one of the languages of
the Elves in Tolkien’s Legendarium. It means sound taste (plural is lámatyáver) the Elves in Tolkien’s Legendarium. It means sound taste (plural is lámatyáver)
+28 -28
View File
@@ -2498,7 +2498,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1991/ant/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1991/ant/index.html</loc>
<lastmod>2024-04-18T23:29:08+00:00</lastmod> <lastmod>2024-04-19T00:20:09+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1991/ant/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1991/ant/Makefile</loc>
@@ -2510,7 +2510,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1991/ant/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1991/ant/README.md</loc>
<lastmod>2024-04-17T07:02:43+00:00</lastmod> <lastmod>2024-04-19T00:13:56+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1991/brnstnd/1991_brnstnd.tar.bz2</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1991/brnstnd/1991_brnstnd.tar.bz2</loc>
@@ -3262,7 +3262,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/index.html</loc>
<lastmod>2024-04-18T23:29:15+00:00</lastmod> <lastmod>2024-04-19T00:47:42+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/Makefile</loc>
@@ -3278,7 +3278,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/README.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:43:43+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/try.sh</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1992/gson/try.sh</loc>
@@ -5302,7 +5302,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/index.html</loc>
<lastmod>2024-04-18T23:29:36+00:00</lastmod> <lastmod>2024-04-19T00:48:02+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/Makefile</loc>
@@ -5318,7 +5318,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/README.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:46:06+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/test.oc</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1996/august/test.oc</loc>
@@ -6030,7 +6030,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/index.html</loc>
<lastmod>2024-04-18T23:29:44+00:00</lastmod> <lastmod>2024-04-19T00:48:10+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/Makefile</loc>
@@ -6042,7 +6042,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/README.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:45:46+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/try.sh</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1998/df/try.sh</loc>
@@ -6154,11 +6154,11 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1998/dorssel/dorssel.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1998/dorssel/dorssel.html</loc>
<lastmod>2024-04-18T23:28:31+00:00</lastmod> <lastmod>2024-04-19T00:46:58+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1998/dorssel/dorssel.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1998/dorssel/dorssel.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:45:53+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/1998/dorssel/dorssel.orig.c</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/1998/dorssel/dorssel.orig.c</loc>
@@ -6790,7 +6790,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2000/jarijyrki/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2000/jarijyrki/index.html</loc>
<lastmod>2024-04-18T23:29:52+00:00</lastmod> <lastmod>2024-04-19T00:48:18+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2000/jarijyrki/jarijyrki.c</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2000/jarijyrki/jarijyrki.c</loc>
@@ -6810,7 +6810,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2000/jarijyrki/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2000/jarijyrki/README.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:43:51+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2000/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2000/Makefile</loc>
@@ -13510,11 +13510,11 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/doc/example.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/doc/example.html</loc>
<lastmod>2024-04-18T23:28:32+00:00</lastmod> <lastmod>2024-04-19T00:47:00+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/doc/example.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/doc/example.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:43:37+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/.entry.json</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/.entry.json</loc>
@@ -13534,7 +13534,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/index.html</loc>
<lastmod>2024-04-18T23:30:44+00:00</lastmod> <lastmod>2024-04-19T00:39:30+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/luna.jpg</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/luna.jpg</loc>
@@ -13566,7 +13566,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/README.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:37:17+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/try.sh</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2013/hou/try.sh</loc>
@@ -14918,7 +14918,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2015/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2015/index.html</loc>
<lastmod>2024-04-18T23:28:27+00:00</lastmod> <lastmod>2024-04-19T00:20:50+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2015/iocccsize.c</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2015/iocccsize.c</loc>
@@ -15122,7 +15122,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2015/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2015/README.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:16:43+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2015/rules.txt</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2015/rules.txt</loc>
@@ -15478,7 +15478,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/index.html</loc>
<lastmod>2024-04-18T23:31:01+00:00</lastmod> <lastmod>2024-04-19T00:49:27+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/iocccbug01.c</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/iocccbug01.c</loc>
@@ -15554,7 +15554,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/README.md</loc>
<lastmod>2024-04-17T07:33:43+00:00</lastmod> <lastmod>2024-04-19T00:45:39+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/results</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/burton2/results</loc>
@@ -16058,7 +16058,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/index.html</loc>
<lastmod>2024-04-18T23:31:05+00:00</lastmod> <lastmod>2024-04-19T00:49:30+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/Makefile</loc>
@@ -16078,7 +16078,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/README.md</loc>
<lastmod>2024-04-17T07:38:49+00:00</lastmod> <lastmod>2024-04-19T00:44:50+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/v0.image.fs</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2018/mills/v0.image.fs</loc>
@@ -16690,7 +16690,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/duble/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/duble/index.html</loc>
<lastmod>2024-04-18T23:31:10+00:00</lastmod> <lastmod>2024-04-19T00:49:35+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/duble/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/duble/Makefile</loc>
@@ -16714,7 +16714,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/duble/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/duble/README.md</loc>
<lastmod>2024-04-12T18:22:04+00:00</lastmod> <lastmod>2024-04-19T00:44:00+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/endoh/2019_endoh.tar.bz2</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/endoh/2019_endoh.tar.bz2</loc>
@@ -16978,7 +16978,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/index.html</loc>
<lastmod>2024-04-18T23:31:12+00:00</lastmod> <lastmod>2024-04-19T00:49:38+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/IOCCC-hints.cp09_1.809</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/IOCCC-hints.cp09_1.809</loc>
@@ -17014,7 +17014,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/README.md</loc>
<lastmod>2024-04-17T07:00:58+00:00</lastmod> <lastmod>2024-04-19T00:44:31+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/Shakespeare.cp04_1.633</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2019/mills/Shakespeare.cp04_1.633</loc>
@@ -17954,7 +17954,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/index.html</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/index.html</loc>
<lastmod>2024-04-18T23:31:19+00:00</lastmod> <lastmod>2024-04-19T00:49:45+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/Makefile</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/Makefile</loc>
@@ -17978,7 +17978,7 @@
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/README.md</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/README.md</loc>
<lastmod>2024-04-17T07:40:29+00:00</lastmod> <lastmod>2024-04-19T00:44:43+00:00</lastmod>
</url> </url>
<url> <url>
<loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/Shakespeare.txt</loc> <loc>https://ioccc-src.github.io/temp-test-ioccc/2020/kurdyukov4/Shakespeare.txt</loc>