I had a question, in the IOCCC you create a program to solve a certain task. Is that the case here? Or is it any Python program?
You might be confusing the IOCCC with the Underhanded C Contest, in which the goal was to do some particular task, but also subvert it in a non-obvious way: http://www.underhanded-c.org/
1. Are underhanded entries welcome, where the code looks straightforward but does something completely unexpected? For C it's a separate contest[1], but I find a big overlap in the spirit.
2. Are there any tricks that are considered poor taste, like unicode fuckery, light pranks (think "opening the CD tray", not "forkbomb"), or embedding code in other languages?
3. Max length limits? And do I get bonus points for extra short entries?
4. Is optional human input ok, like a game that by default plays itself?
5. Not really a question, but the website is very broken on wide screens[2].
1. Yes! Underhanded entries are welcome. The obfuscation doesn't only apply to the code, but also the purpose of that code.
2. No tricks are in poor taste! The only limit is that we asked for submissions that don't re-use the common types listed by the IOCCC: https://www.ioccc.org/faq.html
3. No max length limits, and yes if you are able to create a very short program that will help. If you submit a longer program it would help the judges to provide a de-obfuscated version as well.
4. Yes, as long as it doesn't require any human intervention to produce output. There can be an alternate mode that allows human intervention, but the main goal is just to reduce confusion from potentially incorrect inputs.
5. Good point, will fix.
import sys
def c(j,t):
sys.stdout.write(j('.')('P'))
return t
(lambda z:lambda y:z(z(y(lambda p:lambda n:(lambda s:lambda z:z(lambda x:
lambda y:y)(lambda d:p(s)(y(s))(d)))(lambda x:lambda a:lambda s:lambda p:
p(a)(lambda y:s(n(x))(y))))(lambda c:lambda a:lambda s:z(lambda y:s(c)(y)
))))(y(lambda p:lambda b:lambda t:t(c(b,p)))))(lambda s:lambda p:p(lambda
x:lambda y:x)(s))(lambda f:(lambda q:q(q))(lambda x:f(lambda y:x(x)(y))))
Guess the pattern of Ps in the output (probably need to redirect stderr to /dev/null)Guess what that is doing