Rmakeのjavascript対応とパーサーをクラス化したkmyacc用定義ファイル
先日Rmakeのjavascript版をテストで実装しました。
HTML5で動作するノベルゲームのエンジンを作ってみた
http://d.hatena.ne.jp/akasata/20100810/1281439398
それにともない、Rmakeのゲームの挙動を記述するスクリプト言語(Arrp)をjavascriptでも実行できるようにしました。
このときパーサーをクラスで出力できるようにしたかったのでkmyacc用定義ファイルを編集して、
パーサーがクラスになるように(つまり、メンバーとして扱うものの前にthis.をつけた)しました。
動作するテストプログラムはここを見てください。
http://www.rmake.net/dycoon/files/kmyaccjs/scripttest/kmyacctest.html
入力欄に書いた四則演算の数式を、runボタンを押したときに解釈し、
結果を出力します。
定義ファイルなどは以下に置きました。
http://www.rmake.net/dycoon/files/kmyaccjs/scripttest.zip
Windowsでkmyaccへのパスが通してあれば、makeコマンドを呼ぶことでパーサーを生成することができます。
kmyaccなどについては以下が参考になるかと思います。
kmyacc - 多言語対応LALRパーサー生成系
http://www005.upp.so-net.ne.jp/kmori/kmyacc/
ActionScriptのyaccを作ったよ
http://d.hatena.ne.jp/yukoba/20080220/p1