Module Corelang__.Alpha
val alpha_arg : (string list * Corelang__.Link.LinkSet.t) -> int -> Parse.arg -> int * (Corelang__.Syntax.c_link * (string * Corelang__.Syntax.c_link list) list)
アルファ変換とアトムの分解
- アトムの引数部分を処理する
- parameter locals
ユーザが明示的に書いた局所リンク名のリスト
- parameter frees
自由リンク名のセット
- parameter link_id
局所リンクに割り当てる用の id
- returns
(更新された局所リンクに割り当てる用の id, (アルファ変換されたリンク名, 分解されたアトムのリスト))
val alpha_atom : (string list * Corelang__.Link.LinkSet.t) -> int -> Parse.arg -> int * (string * Corelang__.Syntax.c_link list) list
アルファ変換とアトムの分解
- トップレベル(抽象構文木の根)のアトムを処理する
- parameter link_names
ユーザが明示的に書いた局所・自由リンク名それぞれのマップオブジェクト
- parameter link_id
局所リンクに割り当てる用の id
- returns
(更新された局所リンクに割り当てる用の id, 分解されたアトムのリスト)
val alpha_atoms : (string list * Corelang__.Link.LinkSet.t) -> Parse.arg list -> (string * Corelang__.Syntax.c_link list) list
アルファ変換とアトムの分解
- アトムを引数部分に埋め込む略記法に対して割り当てるリンク ID は, ユーザが直接書いた局所リンクの数
List.length locals
以上の連続した整数となる.
- parameter link_names
ユーザが明示的に書いた局所・自由リンク名それぞれのマップオブジェクト
- returns
分解されたアトムのリスト
- アトムを引数部分に埋め込む略記法に対して割り当てるリンク ID は, ユーザが直接書いた局所リンクの数