equal
deleted
inserted
replaced
84 val consts_program: theory -> string list -> string list * (naming * program) |
84 val consts_program: theory -> string list -> string list * (naming * program) |
85 val cached_program: theory -> naming * program |
85 val cached_program: theory -> naming * program |
86 val eval_conv: theory -> (sort -> sort) |
86 val eval_conv: theory -> (sort -> sort) |
87 -> (naming -> program -> (((string * sort) list * typscheme) * (string * itype) list) * iterm -> string list -> cterm -> thm) |
87 -> (naming -> program -> (((string * sort) list * typscheme) * (string * itype) list) * iterm -> string list -> cterm -> thm) |
88 -> cterm -> thm |
88 -> cterm -> thm |
89 val eval_term: theory -> (sort -> sort) |
89 val eval: theory -> (sort -> sort) -> ((term -> term) -> 'a -> 'a) |
90 -> (naming -> program -> (((string * sort) list * typscheme) * (string * itype) list) * iterm -> string list -> term) |
|
91 -> term -> term |
|
92 val eval: theory -> (sort -> sort) |
|
93 -> (naming -> program -> (((string * sort) list * typscheme) * (string * itype) list) * iterm -> string list -> 'a) |
90 -> (naming -> program -> (((string * sort) list * typscheme) * (string * itype) list) * iterm -> string list -> 'a) |
94 -> term -> 'a |
91 -> term -> 'a |
95 end; |
92 end; |
96 |
93 |
97 structure Code_Thingol: CODE_THINGOL = |
94 structure Code_Thingol: CODE_THINGOL = |
778 invoke_generation thy (algebra, funcgr) ensure_value (fs, t); |
775 invoke_generation thy (algebra, funcgr) ensure_value (fs, t); |
779 val vs'' = map (fn (v, _) => (v, (the o AList.lookup (op =) vs o prefix "'") v)) vs'; |
776 val vs'' = map (fn (v, _) => (v, (the o AList.lookup (op =) vs o prefix "'") v)) vs'; |
780 in evaluator naming program (((vs'', (vs', ty')), fs'), t') deps end; |
777 in evaluator naming program (((vs'', (vs', ty')), fs'), t') deps end; |
781 |
778 |
782 fun eval_conv thy prep_sort = Code_Wellsorted.eval_conv thy prep_sort o base_evaluator thy; |
779 fun eval_conv thy prep_sort = Code_Wellsorted.eval_conv thy prep_sort o base_evaluator thy; |
783 fun eval_term thy prep_sort = Code_Wellsorted.eval_term thy prep_sort o base_evaluator thy; |
780 fun eval thy prep_sort postproc = Code_Wellsorted.eval thy prep_sort postproc o base_evaluator thy; |
784 fun eval thy prep_sort = Code_Wellsorted.eval thy prep_sort o base_evaluator thy; |
|
785 |
781 |
786 |
782 |
787 (** diagnostic commands **) |
783 (** diagnostic commands **) |
788 |
784 |
789 fun code_depgr thy consts = |
785 fun code_depgr thy consts = |