今日も、ファイルフォーマットが必要な情報をカバーしているかについて考える。座って考えるだけではなく、実際に保存と読み出しのプログラムを書きながら不備ややり難さを洗い出す。
今日は読み出しプログラムを修正している時に、一つ大きな考え忘れがあったことに気がついた。このファイルフォーマット中ではデータを多次元空間中の直方体とみなしている。直方体を一意に決めるには、立体の各辺の長さといずれかの頂点の位置座標を決める必要がある。(回転は考えなくて良い)ところがこれまで位置座標を記録するフィールドがフォーマットに含まれていなかった。代わりに同等の情報を記録するフィールドがあったのだが、どうにも不自然さが消えなかった。位置座標の情報を追加することで、この不自然さも消すことができた。
そろそろフォーマットの仕様を外部に送らないといけないのだが、今回のようにフォーマットに不備がある心配がどうにも拭いきれない。(一人でやっているとこういうときに相談やチェックしてもらえる相手がいないのが痛い。)もちろん「完璧な仕様」を追い求めても詮無いことはわかっているので、せめてフォーマットの更新を容易にできるような仕組みにはしておきたい。
開発中のデータビュワーの方は最低限の機能を実装できたので、自動ビルドの際に再コンパイルの上でインストーラに含まれるようにした。アイコンはまだ開発環境デフォルトのままなので、近いうちにまたデザインを頼まないといけない。なお、セットアップスクリプトを変更したついでに、開発版と正式版の一部が干渉(スタートメニューが互いに上書きされる)する不備を直しておいた。
帰宅後しばらく休んでから、車にガソリンを入れに出た。リッター174円まで上がっていた。外に出たついでにちょっと足を伸ばして普段行かない古本屋廻り。帰りにラーメン屋に寄ったら今日から定食が30円ほど値上がりしていた。さらにこれまで自由に利用できた漬物と一味唐辛子もテーブルから消えていた。原料値上がりなのかインフレの前兆なのか…。