Instruction - akamah/garbanzo GitHub Wiki

必要とされる命令

評価器に実装するか、ネイティブな関数として表現するかはのちほど考える。

算術命令

  • add
  • mul
  • ...

比較命令

  • equal
  • not equal
  • less
  • less or equal
  • ...

論理演算命令

  • and
  • or
  • ...

データストア操作

  • make (データストアを現在の環境で評価して作成する)
  • get (値を取得)
  • set (値を設定)
  • size (データストアに定義されている項目を数える)
  • has (値が設定されているかを調べる)

文字列操作

一つの文字も、文字列として扱うこととする。

  • length(長さを取得)
  • charat (ある場所の文字を取得)
  • append (二つの文字列を結合して、新しい文字列を作成する)
  • char2code (先頭の文字の文字コードを取得)
  • code2char (文字コードから文字列を作成)

環境操作

  • getenv (現在の環境を取得、pwdのような)
  • setenv (現在の環境を移動、cdのような)

関数

  • call (関数を呼び出す)
  • function (関数を作成する)

制御構文

  • while (ループする)
  • if (条件分岐する)
  • quote (評価を抑制する)
  • begin (順番に評価する)