一往確認日記

有限会社伊藤ソフトデザインの代表をしています。

パーサとスキャナの学習 (1)

ラダーを生成するというのは前のブログでもよく読まれていて関心がある内容なんだなと感じてます。

ラダーの自動生成(1) - 一往確認日記(2016-03-30)

個人的にはerbでテンプレートを作ってデバイスを埋め込むということを今だにしています。これについては改めて記事にできたらと思っています。

本当は自由にラダーを生成できる様になればいいのですが、今のところそんなところまでできる知識はありません。
Rubyで書いてラダーに変換してくれるという様なことができたらな〜というのはかなり前から思っているのですが糸口をつかめないままです。

CPUのアセンブラでは順番は関係なくニーモニックを書けますが、ラダーのニーモニックは自由に書けるというわけではなくて、ある塊をブロックとして扱ったりするので文法的な事も意識しないと正しく書けないです。
(順番は関係なくニーモニックを書けますというのはプログラムが正しく動くという事ではなくてエラーが出ないという意味で、ラダーの場合は順番が違うとエラー(回路が構成できない)が出るという意味です。)

正しく書くためにコンパライ的なことが必要になるのではないかと考えてます。

コンパイラは深いところまでの知識はなくて、青木峰郎さんの書かれた解説を読み始めました。

i.loveruby.net

GX WorksやKV STUDIOなどで書き出したラダーのニーモニックから木構造が作れるところまでできたらなというのが最初の目標です。