Ghostscript のバージョン依存性
いろいろなオブジェクトを文字列に変換する命令 cvs や、数を n 進数で表した文字列に変換する命令 cvrs を使うときには文字列を格納するバッファを用意してやらなきゃいけない事はすでに常識ですが、そのバッファが足りなかった場合の振る舞いは Ghostscript のバージョンによって違っています。
Detailed History of Ghostscript versions 8.n にあるように、Ghostscript 8.54 以前では変換してできた文字列の途中までがバッファに格納されるのに対し、8.56 以後では、バッファには何も書き込まれずそのままになります。
GS> /a (aaaa) def GS> 1234567 a cvs Error: /rangecheck (略) GS<2> a == (1234) % gs 8.54 以前 (aaaa) % gs 8.56 以後
ということに anarchy golf - 196 algorithm を解いていて気づきました。
.sort や .cvbsi にもバージョン依存性がありまして、それは id:yshl:20070406:1175886449 に書いてあります。anarchy golf の ghostscript のバージョンが上がった影響で、anarchy golf - sort characters の 33 バイトのコードは現在通らなくなっています。