convert spoiler language and towards deobfuscation language
This commit is contained in:
1 parent
50a2a6293c
commit
4d6009b58f
98 files changed
+195
-358
No files matched your search
@@ -450,15 +450,15 @@ and to satisfy IOCCC’s size rule.</p>
|
||||
<li>Short coding.</li>
|
||||
</ul>
|
||||
<p>These led to the good obfuscation.</p>
|
||||
<p>See <a href="#spoiler">Spoiler section</a> in detail, if you need.</p>
|
||||
<p>See the <a href="#Deobfuscation">deobfuscation 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>
|
||||
<p>Also, it requires a space between identifiers. In short, use <code>(S K)</code> instead of
|
||||
<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 <a href="#spoiler">Spoiler
|
||||
section</a>.</p>
|
||||
<p>In addition, there are some limitations (and workarounds) mentioned in
|
||||
the <a href="#Deobfuscation">deobfuscation 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,7 @@ 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="spoiler">Spoiler</h3>
|
||||
<h3 id="deobfuscation">Deobfuscation</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>
|
||||
|
||||
Reference in new issue
Block a user