プログラミングコンテストとか苦手なんだよねぇ。
でも「FizzBuzzで一番笑わせた奴が優勝」とか、そういうのならやりたい。
なんて言ってたら大学の後輩がこんなのを教えてくれた。IOCCCで出てたFizzBuzz(?)のCode Golf(?)らしい?
dev.c
#include"/dev/tty"
これはコンパイル時に動作を定義する形になってて、コンパイルがちょっと面倒くさいんですけど、例えばHelloWorldならこんな感じ。
% gcc dev.c main(){printf("Hello World!\n");} ^D
2〜3行目は自分で入力します。最後の"^D"はControl-Dで、終端記号です。
っていうかこれCじゃなくてほとんどCPPなので、CPPさえ使えれば言語は問いません。
例えばHaskellだとこんな感じ。
dev.hs
#include"/dev/tty"
コンパイルはこう。
% ghc -cpp dev.hs main=putStrLn"Hello World!" ^D
実行。
% ./dev Hello World!
これはひどい