QA@IT

言語作成 変数実装悩んでいます。

1810 PV

独学でJavaCCとJavaを使って日本語で書けるプログラミング言語の作成をしています。
一通り構文解析して実行に必要なデータを作り、解析が終わったらそれを実行するような形のものを作っています。

今のところ一応以下のことはできるようになりました。
・自作関数
・条件文
・繰り返し文
・標準出力

変数実装について、構文は以下のようなものを考えています。
この言語では変数を箱と呼ぶことにしています。
コメント~は一般的な//~と同じコメント文です。

箱[変数]を作る コメント変数の作成の例
[変数]に「こんにちは」を入れる コメント変数に代入の例
[変数]と言う コメント変数を出力の例
もし[変数]が[変数2]と同じなら コメント条件文の例
「2つは同じです」と言う
をする

流れ的には実行中に作る命令があったらはこの領域を用意したりさせるんだと思っています。
作らせることはできると思いますけど、そこに代入したり標準出力や条件文・繰り返し文の条件で使うために呼び出すのをどうすればいいのか悩んでいます。
なにかアドバイスや参考になりそうなサイトなどを教えてもらえるとうれしいです。

  • 自作関数の定義や呼び出しは、どのように実装したんですか?同じ要領でできませんか? -
  • 関数の呼び出しは名前と登録しているリストを渡してしまって、呼び出し文実行の時にその名前をリストから探して、その名前とセットで登録されている関数のデータを実行しています。
    とりあえず自分の思うように動いている程度で、自分でもこのやり方はどうなんだろう?と思っています。
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。