add notices to those who wish for a greater challenge

We add the following level-3 header to help people identify text
they may wish to skip if they wish for a greater challenge:

```
```

After that notice we add:

```
**If you want a greater challenge, don't read any further**:
just try to understand the program via the source.

If you get stuck, come back and read below for additional hints and information.
```

And sometimes follow with:

```
```

Or sometimes follow with:

```
```

Where the alt code impacts a "greater challenge", we add instead:

```
**If you want a greater challenge, don't read any further**:
just try to understand the program without looking at the Alternate code.

If you get stuck, come back and look at the Alternate code.
```

And where a given command impacts a "greater challenge", we add instead:

```
**If you want a greater challenge, don't read any further**:
just try to understand the program without running the command below.

If you get stuck, come back and run the following command:
```

Perform `make www` to perform the above and test under macOS.
This commit is contained in:
Landon Curt Noll committed 2024-07-07 00:25:20 -07:00
1 parent 7af7a80cca
commit 2e2ae5f132
112 files changed
+845 -216

No files matched your search

+11 -3
View File
@@ -106,7 +106,7 @@ and to satisfy IOCCC's size rule.
These led to the good obfuscation.
See the [obfuscation section](#obfuscation) in detail, if you need.
See the [How this entry works section](#how_this_entry_works) in detail, if you need.
### Limitation
@@ -120,7 +120,7 @@ Also, it requires a space between identifiers. In short, use `(S K)` instead of
Huge memory may be required to compile the program (about 300 MB on my machine).
In addition, there are some limitations (and workarounds) mentioned in
the [obfuscation section](#obfuscation).
the [How this entry works section](#how_this_entry_works).
But I think it would only matter when you run the attached programs.
@@ -156,7 +156,15 @@ run it as a standalone program, at least. In fact, tcc does not support the
macro, but does work.
### Obfuscation
### NOTICE to those who wish for a greater challenge
**If you want a greater challenge, don't read any further**:
just try to understand the program via the source.
If you get stuck, come back and read below for additional hints and information.
### How this entry works:
The whole program is interpreted by macro expansion.
For example, `S (K I)` is translated to a normal C code, `(s)((k)(i))`, or
+7 -3
View File
@@ -450,7 +450,7 @@ and to satisfy IOCCC’s size rule.</p>
<li>Short coding.</li>
</ul>
<p>These led to the good obfuscation.</p>
<p>See the <a href="#obfuscation">obfuscation section</a> in detail, if you need.</p>
<p>See the <a href="#how_this_entry_works">How this entry works section</a> in detail, if you need.</p>
<h3 id="limitation">Limitation</h3>
<p>This program supports only “Combinator-calculus style notation” of Lazy K.
“Unlambda style” and “Iota and Jot” style are not supported.</p>
@@ -458,7 +458,7 @@ and to satisfy IOCCC’s size rule.</p>
<code>(SK)</code>, “`sk”, <code>**i*i*i*ii*i*i*ii</code>, or <code>11111100011100</code>.</p>
<p>Huge memory may be required to compile the program (about 300 MB on my machine).</p>
<p>In addition, there are some limitations (and workarounds) mentioned in
the <a href="#obfuscation">obfuscation section</a>.</p>
the <a href="#how_this_entry_works">How this entry works section</a>.</p>
<p>But I think it would only matter when you run the attached programs.</p>
<h3 id="portability">Portability</h3>
<p>I confirmed that the program successfully worked with the following compilers:</p>
@@ -486,7 +486,11 @@ It is a gcc extension, and also supported by clang. If your compiler does not
support it, you cannot use the program as a library. But you can compile and
run it as a standalone program, at least. In fact, tcc does not support the
macro, but does work.</p>
<h3 id="obfuscation-1">Obfuscation</h3>
<h3 id="notice-to-those-who-wish-for-a-greater-challenge">NOTICE to those who wish for a greater challenge</h3>
<p><strong>If you want a greater challenge, don’t read any further</strong>:
just try to understand the program via the source.</p>
<p>If you get stuck, come back and read below for additional hints and information.</p>
<h3 id="how-this-entry-works">How this entry works:</h3>
<p>The whole program is interpreted by macro expansion.
For example, <code>S (K I)</code> is translated to a normal C code, <code>(s)((k)(i))</code>, or
simply <code>s(k(i))</code>.</p>
+9 -1
View File
@@ -181,7 +181,15 @@ For the same reason, do not post a score that contains only `z1092`.
You know, it is ["the famous song"](http://en.wikipedia.org/wiki/4%E2%80%B233%E2%80%B3).
### Spoiler
### NOTICE to those who wish for a greater challenge
**If you want a greater challenge, don't read any further**:
just try to understand the program via the source.
If you get stuck, come back and read below for additional hints and information.
### How this entry works:
Here is a magical expression which I found by brute-force:
+5 -1
View File
@@ -516,7 +516,11 @@ such as <code>C2E2</code>.</p>
But I do not attach it to protect you from W****r.</p>
<p>For the same reason, do not post a score that contains only <code>z1092</code>.
You know, it is <a href="http://en.wikipedia.org/wiki/4%E2%80%B233%E2%80%B3">“the famous song”</a>.</p>
<h3 id="spoiler">Spoiler</h3>
<h3 id="notice-to-those-who-wish-for-a-greater-challenge">NOTICE to those who wish for a greater challenge</h3>
<p><strong>If you want a greater challenge, don’t read any further</strong>:
just try to understand the program via the source.</p>
<p>If you get stuck, come back and read below for additional hints and information.</p>
<h3 id="how-this-entry-works">How this entry works:</h3>
<p>Here is a magical expression which I found by brute-force:</p>
<pre><code> (c % 32 + 5) * 9 / 5 % 13 + n / 32 * 12 - 22</code></pre>
<p>Interestingly, it converts an ASCII number of ABC notes
+9 -1
View File
@@ -192,7 +192,15 @@ quite memory consuming, requires IEEE754-compliant `double`, and assumes `int` t
doesn't copy saved sessions across different endianness.
### Spoiler
### NOTICE to those who wish for a greater challenge
**If you want a greater challenge, don't read any further**:
just try to understand the program via the source.
If you get stuck, come back and read below for additional hints and information.
### How this entry works:
```
3225 3225 3225 9 9 3225 3225
+5 -1
View File
@@ -538,7 +538,11 @@ quite memory consuming, requires IEEE754-compliant <code>double</code>, and assu
<li>Though technically endian-dependent, <code>a.c</code> remains portable providing that one
doesn’t copy saved sessions across different endianness.</li>
</ul>
<h3 id="spoiler">Spoiler</h3>
<h3 id="notice-to-those-who-wish-for-a-greater-challenge">NOTICE to those who wish for a greater challenge</h3>
<p><strong>If you want a greater challenge, don’t read any further</strong>:
just try to understand the program via the source.</p>
<p>If you get stuck, come back and read below for additional hints and information.</p>
<h3 id="how-this-entry-works">How this entry works:</h3>
<pre><code> 3225 3225 3225 9 9 3225 3225
1 1 1 1 1 1 1 1 1 1
4225 1226 1 1 1 1 1222 1226