一応、棋譜のメタ情報(プレイヤ名のみ)と棋譜本体部分を抽出することには成功しました。動いたことによって駒を取ったのか?王手か?みたいな部分は全くなのですが、一応棋譜学習を行う上での必要最低限にはかなり近づいたんじゃないかと思います。αを名乗れるクオリティかどうかは疑問ですけども。
なんかデザインパターンぽいことをしつつインタプリタを書こうと思ったので。正直自分でもあまり理解できてない気がする。書いたコードのメリットもいまいち掴みきれてない。Stateパターン、あとメソッドチェーンのテクニックを(適切かどうかは置いといて)使っています。Interpreterも練習してみたかったし一部のアイデアは今回のコードに盛り込んだつもりだけど、多分Interpreterにはなってないです。どっちかというとFacadeとかに近いのかもしれない。
なんかトリッキーにやろうとしてごちゃごちゃしてる感じ。