タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

OCamlに関するsugyanのブックマーク (1)

  • Trees that Grow in OCaml - Qiita

    要約 抽象構文木のような再帰的データ構造に対して、再帰的に各ノードに付加情報を付けられるようにする、Tree decoration問題というのがある。Haskellでは開いた型族(open type family)を使ってこの問題を解決しており、TypeScriptではインタフェースを型パラメータに渡すことで解決できる(入れ子構造を自由に拡張する – TypeScript版「Trees that Grow」を参照)。OCamlでは多相バリアントとオブジェクト型を使うと、より拡張性を高めた形でこの問題を解決することができる。 問題設定 次のような、整数リテラル、変数参照、代入、関数式、関数呼び出しのある言語を考える。 type expr = | Literal of int | Variable of string | SetVariable of string * expr | Func

    Trees that Grow in OCaml - Qiita
    sugyan
    sugyan 2023/04/04
  • 1