以下の内容はhttps://tutuz-tech.hatenablog.com/entry/2020/05/05/123430より取得しました。


orelangをGoで実装した

以下の記事を読んで私も orelang を実装してみました。実装は記事に沿った形にしています。

qiita.com

https://github.com/d-tsuji/orelang

字句解析を JSON パーサにおまかせしているので、やっていることはパースした JSON に含まれる文字を見て順番に評価していくことです。構文解析は適当なので、invalid な JSON を与えると Go でエラーがおきます。

式クラスを定義しておいて、引数に応じてオペレータを呼び出すのか、即値の評価をするのか...ということを繰り返し行っていきます。文字に対応するオペレータを定義するところがポイントです。

言語処理系を実装する書籍だと、Go言語でつくるインタプリタが有名ですが、JSON パーサを用いることで簡単に、だが重要な点は学べそうで、とても良いと思います。




以上の内容はhttps://tutuz-tech.hatenablog.com/entry/2020/05/05/123430より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14