JSON棋譜フォーマットに関する見解

今後のドキュメント作成のための覚書. @na2hiro自身の見解が読みやすいよう恣意的に並べ替えたものですので悪しからず. 昔のプレゼンが読みづらい(抽象的・概念的なことがあまり書かれてない)のはご愛嬌.
6
51 @hitman51rivl

@na2hiro DSLは野望に近いですね。ルールを記述するための言語もやりすぎるとただの汎用プログラミング言語になってしまうので、そのさじ加減が難しいですね。

2015-01-17 15:06:33

保存専用の形式の必要性について

51 @hitman51rivl

@na2hiro おそらくみなさん思っていることは同じで、問題点もどうすればよさそうかもなんとなく一致してそうな気がしますね。求められる形式には2つあると思っています。「変換するためのHUBとなるような一時的なデータ交換用の形式」と「保存するための形式」

2015-01-17 14:26:19
51 @hitman51rivl

@na2hiro この2つの形式については要求が若干異なり、データ交換のための形式では、最大限に情報が入りさえすれば、容量的な問題は大したことはないでしょう。一方で保存して長期にわたって使用するような形式の場合は、いくつか要求が増えます。

2015-01-17 14:28:20
na2hiro 💿 93連休終わった @na2hiro

@hitman51rivl これだけハードディスク容量が増えているので容量的問題の必要性は感じていません.1億局の棋譜を擁する将棋ウォーズですらテラバイトいってないはずです.でも,もし対応するなら,フィールドを復元可能な最小セットに制限してMessagePackで保存しますかね.

2015-01-17 14:51:05
51 @hitman51rivl

@na2hiro そうですね。私も容量についてはそれほど致命的ではないと思っています。手抜きでやるならZIPかなにかで圧縮してしまいばよさそうですし。

2015-01-17 14:53:38
51 @hitman51rivl

@na2hiro 今までの形式がミニマムな方向だなと感じたので、その人達に対して受け入れてもらえるかなとちょっと気になりました。

2015-01-17 14:56:51

多形式間での互換性(変換性)について

51 @hitman51rivl

@na2hiro はい。互換性が一番の課題だろうと思います。CSAももとはすべて包含しようとしてできた形式だと思うので、同じ道にならないようにしないといけませんね。でないと複数ある形式の一形式に成り下がってしまうので。

2015-01-17 14:59:10
51 @hitman51rivl

@na2hiro 最初からすべてを包含する形式を定義するのは困難なので、段階的に拡張していく戦略になるかと思います。そういう意味でも拡張性は必要でしょうね。

2015-01-17 15:01:37
na2hiro 💿 93連休終わった @na2hiro

@hitman51rivl すみません,さっきのツイートでの互換性は,その形式のバージョン間での話です.他形式との互換性(変換性?)は,ご存知のように主要形式のフィールドのスーパーセットを用意することで保証しようとしています.それと,CSAは決して変換性を保証しようというよりは

2015-01-17 15:04:33
na2hiro 💿 93連休終わった @na2hiro

@hitman51rivl ライブラリを使わず簡単に間違いなく手でパーサが書けることが主眼で,手を戻すためのデータは必要がないなど,かなりコンピュータ将棋(の対局)寄りという印象を持っています.

2015-01-17 15:09:07
51 @hitman51rivl

@na2hiro なるほど。CSAはそこまで広げてなかったんですね。目的が違っていましたか。

2015-01-17 15:10:33
na2hiro 💿 93連休終わった @na2hiro

@hitman51rivl 一応ソフトが扱いやすいように,と謳ってますが,24年前とは想定されるソフトが様変わりしてそうです. computer-shogi.org/protocol/recor… 指すだけならルールに関して全能なソフトを仮定してもいいですが,観る将など再生専用アプリの需要も出てますし.

2015-01-17 15:20:14
51 @hitman51rivl

@na2hiro なるほど。世の中の動きとしては棋譜の方に情報を持たせようという方向性なんですね。確かにその方が作る側にとっても楽ですからね。

2015-01-17 15:23:43

おわりに

51 @hitman51rivl

結論。JKF(JSON棋譜フォーマット)に期待!

2015-01-17 15:46:37
51 @hitman51rivl

PEG(Parsing Expression Grammar)には期待していたのだが、まさかこんなところで使われるとは思ってなかったなあ。

2015-01-17 15:56:20