>>Delta

パーサの設計が予想以上に難しかった

2011年5月18日

パーサの設計が予想以上に難しかった

調子が出なかったのであまり作業が進まず。

ファイルパーサはかなり先まで書いたところで中断。

  • Aは必ず1つ以上存在しなければならない
  • Bを指定したら同時にCも指定しなければならない
  • DかEかどちらか一つしか指定できない
  • GよりもFを先に指定する必要がある

などの制約を課そうとすると、パーサーを使って順不同に読み込んだあとに、プログラム側で漏れなくチェックするのがかなり面倒であることに気がついたのです。xmlとかで厳密に構造を管理をするなら別として、研究用の自前ツールでやるにしては、コストをかけすぎです。

値が足りなければ以上停止か暴走かすると思うのだけれど、そういうの放置するんならそもそもファイルパーサーなんてたいそうなもの作る必要性が無くなってしまう。

悩んだ末、当初想定していた自由度の高いパーサは諦めて

  • 空行とコメント行は読み飛ばす
  • 「キーワードと値」のペアを認識する

というルーチンだけ書いて、順番は固定で読み込ませるところに落ち着きましたとさ。

投稿者 CASPAR003
投稿時刻 23:40
カテゴリー 雑記
コメント 0 件
トラックバック 0 件
記事へのリンク http://www.caspar003.info/delta/archive/2011/05/18/2340.html
コメント
投稿者
コメント
トラックバック
  • トラックバック

ブログ情報

カレンダー
2018年2月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28
最近のエントリー
最近のコメント
コメントを頂いたエントリー
コメントをくださった方一覧
コピー用紙の裏表
でった☆
CASPAR003
あのー
CASPAR003
amumo
CASPAR003
mariko
kazu
お仕事で青ざめた話
iun
iun
CASPAR003
AcrobatでPDFの一括印刷
Caesar
CASPAR003
Shadeのレンダラー仕様メモ
iun
CASPAR003
ブログ同盟本 C87 3日目 東S-04b
CON$
CASPAR003
Ca3 Post_Effector 2.0
sisioumaru
CASPAR003
sisioumaru
CASPAR003
Shade15について雑感
iun
CASPAR003
iun
色について
iun
CASPAR003
Lv67
iun
CASPAR003
雪まつり行ってきたよ
iun
CASPAR003