Most Irregular Expression

最も非正規な表現

受賞者:David Van Brackle

引用元:https://www.ioccc.org/1993/vanb.c

審査員・作者による説明:https://github.com/ioccc-src/winner/blob/main/1993/vanb.hint

動作

8進数での電卓。

$ gcc -DO5=main -o vanb vanb.c

$ ./vanb 1+1
2

$ ./vanb 4+4
10

$ ./vanb "(4+4)*(4+4)"
100

解説

+-*/%に対応していて、カッコも使える。D999で10進数の数字、XFFFで16進数の数字も表せる。

main関数の再帰呼び出しで再帰下降構文解析を実装しているとのこと。この構文解析で表現できる言語は正規表現(regular expression)を超えることが賞名の由来になっていると思われる。

コード形状はローマ数字のVIII(8)。8進数の8とのこと。main関数がひとつあり、そのパラメータを除いてグローバル変数もローカル変数もない。使っている定数はすべて8進数(printfのフォーマット文字列も)。変数名も8進数っぽいものにしている。