src/Pure/ROOT.ML
author wenzelm
Mon Jul 09 23:12:31 2007 +0200 (2007-07-09)
changeset 23670 681ffad36776
parent 23353 3069dade3eb4
child 23696 ff97a943681e
permissions -rw-r--r--
use position.ML after pretty.ML;
wenzelm@19
     1
(*  Title:      Pure/ROOT.ML
clasohm@0
     2
    ID:         $Id$
clasohm@0
     3
wenzelm@16842
     4
Pure Isabelle.
clasohm@0
     5
*)
clasohm@0
     6
clasohm@0
     7
val banner = "Pure Isabelle";
wenzelm@11835
     8
val version = "Isabelle repository version";    (*filled in automatically!*)
wenzelm@11835
     9
wenzelm@12248
    10
print_depth 10;
clasohm@0
    11
wenzelm@5017
    12
(*basic tools*)
wenzelm@21396
    13
use "General/basics.ML";
clasohm@0
    14
use "library.ML";
wenzelm@22592
    15
wenzelm@22592
    16
(*generic non-sense*)
wenzelm@22592
    17
val quick_and_dirty = ref false;
wenzelm@22592
    18
val print_mode = ref ([]: string list);
wenzelm@22592
    19
fun print_mode_active s = member (op =) (! print_mode) s;
wenzelm@22592
    20
wenzelm@5017
    21
cd "General"; use "ROOT.ML"; cd "..";
wenzelm@14781
    22
wenzelm@14781
    23
(*fundamental structures*)
wenzelm@20075
    24
use "name.ML";
clasohm@0
    25
use "term.ML";
wenzelm@20507
    26
use "term_subst.ML";
wenzelm@14823
    27
use "General/pretty.ML";
wenzelm@23670
    28
use "General/position.ML";
wenzelm@14781
    29
use "sorts.ML";
wenzelm@14781
    30
use "type.ML";
wenzelm@16435
    31
use "context.ML";
wenzelm@23353
    32
use "context_position.ML";
wenzelm@16980
    33
use "compress.ML";
wenzelm@22694
    34
use "type_infer.ML";
wenzelm@19
    35
wenzelm@4949
    36
(*inner syntax module*)
wenzelm@22679
    37
use "Syntax/lexicon.ML";
wenzelm@22679
    38
use "Syntax/ast.ML";
wenzelm@22679
    39
use "Syntax/syn_ext.ML";
wenzelm@22679
    40
use "Syntax/parser.ML";
wenzelm@22679
    41
use "Syntax/type_ext.ML";
wenzelm@22679
    42
use "Syntax/syn_trans.ML";
wenzelm@22679
    43
use "Syntax/mixfix.ML";
wenzelm@22679
    44
use "Syntax/printer.ML";
wenzelm@22679
    45
use "Syntax/syntax.ML";
wenzelm@22679
    46
structure Hidden = struct end;
wenzelm@22679
    47
structure Lexicon = Hidden;
wenzelm@22679
    48
structure Ast = Hidden;
wenzelm@22679
    49
structure SynExt = Hidden;
wenzelm@22679
    50
structure Parser = Hidden;
wenzelm@22679
    51
structure TypeExt = Hidden;
wenzelm@22679
    52
structure SynTrans = Hidden;
wenzelm@22679
    53
structure Mixfix = Hidden;
wenzelm@22679
    54
structure Printer = Hidden;
wenzelm@22679
    55
wenzelm@21475
    56
use "General/ml_syntax.ML";
clasohm@0
    57
wenzelm@15825
    58
(*core of tactical proof system*)
wenzelm@18934
    59
use "envir.ML";
wenzelm@18934
    60
use "logic.ML";
wenzelm@18059
    61
use "consts.ML";
clasohm@0
    62
use "sign.ML";
clasohm@0
    63
use "pattern.ML";
clasohm@0
    64
use "unify.ML";
clasohm@0
    65
use "net.ML";
obua@16108
    66
use "defs.ML";
paulson@1528
    67
use "theory.ML";
berghofe@11511
    68
use "proofterm.ML";
clasohm@0
    69
use "thm.ML";
wenzelm@22361
    70
use "more_thm.ML";
wenzelm@13271
    71
use "fact_index.ML";
wenzelm@3986
    72
use "pure_thy.ML";
wenzelm@19589
    73
use "display.ML";
clasohm@0
    74
use "drule.ML";
wenzelm@22904
    75
use "conv.ML";
wenzelm@22233
    76
use "morphism.ML";
wenzelm@19898
    77
use "variable.ML";
clasohm@0
    78
use "tctical.ML";
paulson@1582
    79
use "search.ML";
wenzelm@21708
    80
use "tactic.ML";
skalberg@15006
    81
use "meta_simplifier.ML";
wenzelm@19417
    82
use "conjunction.ML";
wenzelm@20225
    83
use "assumption.ML";
wenzelm@17963
    84
use "goal.ML";
clasohm@0
    85
berghofe@11511
    86
(*proof term operations*)
wenzelm@15825
    87
use "Proof/reconstruct.ML";
wenzelm@15825
    88
use "Proof/proof_syntax.ML";
wenzelm@15825
    89
use "Proof/proof_rewrite_rules.ML";
wenzelm@15825
    90
use "Proof/proofchecker.ML";
wenzelm@15825
    91
wenzelm@22108
    92
(*the main Isar system*)
wenzelm@6178
    93
cd "Isar"; use "ROOT.ML"; cd "..";
wenzelm@20207
    94
use "subgoal.ML";
wenzelm@5834
    95
berghofe@13402
    96
use "Proof/extraction.ML";
berghofe@11511
    97
wenzelm@17467
    98
cd "Tools"; use "ROOT.ML"; cd "..";
wenzelm@17467
    99
wenzelm@12778
   100
(*configuration for Proof General*)
wenzelm@21941
   101
cd "ProofGeneral"; use "ROOT.ML"; cd "..";
obua@16781
   102
wenzelm@18991
   103
use_thy "Pure";
wenzelm@18991
   104
structure Pure = struct val thy = theory "Pure" end;
wenzelm@18837
   105
wenzelm@18837
   106
Context.add_setup
wenzelm@22796
   107
 (Sign.del_modesyntax Syntax.default_mode Syntax.appl_syntax #>
wenzelm@22796
   108
  Sign.add_syntax Syntax.applC_syntax);
wenzelm@18991
   109
use_thy "CPure";
wenzelm@18991
   110
structure CPure = struct val thy = theory "CPure" end;
wenzelm@15801
   111
wenzelm@17467
   112
(*final ML setup*)
wenzelm@6178
   113
use "install_pp.ML";
wenzelm@6237
   114
val use = ThyInfo.use;
wenzelm@21858
   115
val cd = File.cd o Path.explode;
wenzelm@7938
   116
ml_prompts "ML> " "ML# ";
berghofe@11511
   117
wenzelm@11545
   118
proofs := 0;