抽象構文木をどうしようかと
とりあえず Verilogのシンタックスチェックできる程度、ということで
(意味解析してないから、たとえば入力ポートの信号と input宣言の信号が合ってなくても文句言わないくらいザルですし)
遠くを見ると気を失いそうになるのですが
わからないことを書き出して気持ちを楽にしながら進んでいくとします。
いや、ほんとわからないことだらけだなぁ。
でも Haskell Parsecとは仲良くなれてきたはず。
で、抽象構文木を作らなきゃ、ということで考えているのですが
ただ考えてもわからないと思うので、先人の知恵を拝借しようと
Icarus Verilogの実装をみたりしています。
http://sourceforge.net/projects/iverilog
あと、Ruby Hacking Guide (RHG)を読んだり、とか。
http://i.loveruby.net/ja/rhg/
それから「スクリプトエンジンプログラミング」の本を読んだり実装を見たり、とか。
- 作者: 坂本千尋
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2008/09/27
- メディア: 単行本
- 購入: 6人 クリック: 248回
- この商品を含むブログ (28件) を見る
まずはモジュールの構造を抽出したいと思っているのだけど
完全並列に実行するために必要な要素を、データ構造に仕込んでおきたいなぁ、とか考えたりすると
Icarus Verilogの実装が参考になるかな、と。
ツリー構造というかグラフ構造を意識しないといけないかなぁ、とか考えたり。
Haskellも Parsecじゃない部分(ふつうに Haskellな部分)と
仲良くなっていかないとなぁ。
ブログは頻繁には更新できていませんが、githubにはちまちまと更新しています。
もし気にしてくださってる方がいらっしゃいましたら
githubの方をウォッチしてみていただければ、と思います。
http://github.com/kei-os/vparsec/tree/master