src/Pure/net.ML
changeset 7943 e31a3c0c2c1e
parent 6539 2e7d2fba9f6c
child 12319 cb3ea5750c3b
equal deleted inserted replaced
7942:4f8cf6552787 7943:e31a3c0c2c1e
    37 struct
    37 struct
    38 
    38 
    39 datatype key = CombK | VarK | AtomK of string;
    39 datatype key = CombK | VarK | AtomK of string;
    40 
    40 
    41 (*Bound variables*)
    41 (*Bound variables*)
    42 fun string_of_bound i = "*B*" ^ chr i;
    42 fun string_of_bound i = "*B*" ^ chr (i div 256) ^ chr (i mod 256);
    43 
    43 
    44 (*Keys are preorder lists of symbols -- Combinations, Vars, Atoms.
    44 (*Keys are preorder lists of symbols -- Combinations, Vars, Atoms.
    45   Any term whose head is a Var is regarded entirely as a Var.
    45   Any term whose head is a Var is regarded entirely as a Var.
    46   Abstractions are also regarded as Vars;  this covers eta-conversion
    46   Abstractions are also regarded as Vars;  this covers eta-conversion
    47     and "near" eta-conversions such as %x.?P(?f(x)).
    47     and "near" eta-conversions such as %x.?P(?f(x)).