Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

Stack Overflowの404ページにあるコードがPolyglotになっている

f:id:tbpg:20160820013328p:plain

Stack Overflow の 404 ページにアクセスすると、
Polyglotのコード画像があります。

http://stackoverflow.com/404

Polyglotとは?

複数のプログラム言語で実行できる一つのプログラムのことです。

Online OCR

http://www.onlineocr.net/

404ページのPolyglotのコードが画像だったため、上記のサイトを利用してテキストを抽出してみることにしました。

1# define v putchar 2# define print(x) main(){v(4+v(v(52)-4));return 0;}/* 3#) 44) < 7> 4print(202*2);exit(); 5#define/*>.@*/exit()

brainf*ckの部分がちゃんと抽出できていないのと、行番号が入っていることを除けばその他はちゃんと抽出できました。

コードの作者コメント

で、結局はここにテキスト化されたコードがあったのでWeb OCRで変換したコードは不要になりました。
Stack Overflow にコードの作者の解説コメントがあります。

What's the joke in the Stack Overflow 404 page code? - StackOverflow

コード

# define v putchar
# define print(x) main(){v(4+v(v(52)-4));return 0;}/*
#>+++++++4+[>++++++<-]>++++.----.++++.*/
print(202*2);exit();
#define/*>.@*/exit()
  • 出力
404

実行結果

ideone による各言語の実行結果です