JavaScript (34) 用語の扱い

若干 JavaScript から外れますが、用語の扱いについて書いてみたいと思います。

現在私は棋譜を再生するプログラムに取り組んでいて、過去に作った JavaScript のソースコードのコメントを英訳しています。以前から Small Basic のプログラムは英文を使うようにしていたのですが、JavaScript のコードも世界の方々にも読んでもらいたいので英語にすることにしました。

コンピュータ囲碁の用語は特に英語においては、まだ統一されていない部分があります。したがって訳すときに迷います。

コンピュータ囲碁で重要な概念として「連」があります。連は石が縦横につながったものです(縦横斜めにつながっている場合は「群」といいます)。日本棋院の『日本囲碁規約』では単に「石」と表現していますが、コンピュータ囲碁の世界ではこれを連と読んでいます。『コンピュータ囲碁の入門』によると連は「海外では string と呼ばれることが多い」とあります。私の読んだ英文では unit (Karl Baker: “The Way to Go”), block (David B. Benson: “Life in the Game of Go”), group (Petr Baudiš: “MTCS with Information Sharing”[*]) など多岐に渡ります。

連は元々、連珠から来た言葉ではないかと思います。そう考えると元々は一直線に並ぶ石を意味していたわけで、訳語としては string が近いかもしれません。これを囲碁の場合には二次元に拡張して突起や曲がり角があっても連と呼んでいます。ゲームの世界ではこのような形をドミノから発展してポリオミノと呼んだり、動物 (animal) と呼ぶこともあります。

意味としては石が一塊になっているので unit がいいと思い、これまで私のプログラムの中では unit という訳語を使っていました。日本では「連」でほぼ統一されているようなので、その訳語という観点では string のほうがいいのかもしれません。機会をみて修正しようかと思います。

いずれにせよ、プログラムを書く際にはこのような用語はプログラムの中では統一して使うのがいいでしょう。自分で英訳しなければならない概念も出てくるので、できれば日本語との対応表も作っておくと後々の理解の助けにもなるでしょう。自分で作ったプログラムも何年かすると他人の作ったものと変わらない未知のものになってしまいますから。

[*] Pachi というかなり強い囲碁プログラムに関する論文です。

コメントを残す