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:
1 parent
7af7a80cca
commit
2e2ae5f132
112 files changed
+845
-216
No files matched your search
+11
-3
@@ -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
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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:
|
||||
|
||||
|
||||
@@ -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
@@ -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
@@ -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
|
||||
|
||||
Reference in new issue
Block a user