src/Pure/ROOT.ML
author wenzelm
Wed Jun 13 00:01:56 2007 +0200 (2007-06-13)
changeset 23353 3069dade3eb4
parent 22904 de2d630e1548
child 23670 681ffad36776
permissions -rw-r--r--
added context_position.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@14781
    28
use "sorts.ML";
wenzelm@14781
    29
use "type.ML";
wenzelm@16435
    30
use "context.ML";
wenzelm@23353
    31
use "context_position.ML";
wenzelm@16980
    32
use "compress.ML";
wenzelm@22694
    33
use "type_infer.ML";
wenzelm@19
    34
wenzelm@4949
    35
(*inner syntax module*)
wenzelm@22679
    36
use "Syntax/lexicon.ML";
wenzelm@22679
    37
use "Syntax/ast.ML";
wenzelm@22679
    38
use "Syntax/syn_ext.ML";
wenzelm@22679
    39
use "Syntax/parser.ML";
wenzelm@22679
    40
use "Syntax/type_ext.ML";
wenzelm@22679
    41
use "Syntax/syn_trans.ML";
wenzelm@22679
    42
use "Syntax/mixfix.ML";
wenzelm@22679
    43
use "Syntax/printer.ML";
wenzelm@22679
    44
use "Syntax/syntax.ML";
wenzelm@22679
    45
structure Hidden = struct end;
wenzelm@22679
    46
structure Lexicon = Hidden;
wenzelm@22679
    47
structure Ast = Hidden;
wenzelm@22679
    48
structure SynExt = Hidden;
wenzelm@22679
    49
structure Parser = Hidden;
wenzelm@22679
    50
structure TypeExt = Hidden;
wenzelm@22679
    51
structure SynTrans = Hidden;
wenzelm@22679
    52
structure Mixfix = Hidden;
wenzelm@22679
    53
structure Printer = Hidden;
wenzelm@22679
    54
wenzelm@21475
    55
use "General/ml_syntax.ML";
clasohm@0
    56
wenzelm@15825
    57
(*core of tactical proof system*)
wenzelm@18934
    58
use "envir.ML";
wenzelm@18934
    59
use "logic.ML";
wenzelm@18059
    60
use "consts.ML";
clasohm@0
    61
use "sign.ML";
clasohm@0
    62
use "pattern.ML";
clasohm@0
    63
use "unify.ML";
clasohm@0
    64
use "net.ML";
obua@16108
    65
use "defs.ML";
paulson@1528
    66
use "theory.ML";
berghofe@11511
    67
use "proofterm.ML";
clasohm@0
    68
use "thm.ML";
wenzelm@22361
    69
use "more_thm.ML";
wenzelm@13271
    70
use "fact_index.ML";
wenzelm@3986
    71
use "pure_thy.ML";
wenzelm@19589
    72
use "display.ML";
clasohm@0
    73
use "drule.ML";
wenzelm@22904
    74
use "conv.ML";
wenzelm@22233
    75
use "morphism.ML";
wenzelm@19898
    76
use "variable.ML";
clasohm@0
    77
use "tctical.ML";
paulson@1582
    78
use "search.ML";
wenzelm@21708
    79
use "tactic.ML";
skalberg@15006
    80
use "meta_simplifier.ML";
wenzelm@19417
    81
use "conjunction.ML";
wenzelm@20225
    82
use "assumption.ML";
wenzelm@17963
    83
use "goal.ML";
clasohm@0
    84
berghofe@11511
    85
(*proof term operations*)
wenzelm@15825
    86
use "Proof/reconstruct.ML";
wenzelm@15825
    87
use "Proof/proof_syntax.ML";
wenzelm@15825
    88
use "Proof/proof_rewrite_rules.ML";
wenzelm@15825
    89
use "Proof/proofchecker.ML";
wenzelm@15825
    90
wenzelm@22108
    91
(*the main Isar system*)
wenzelm@6178
    92
cd "Isar"; use "ROOT.ML"; cd "..";
wenzelm@20207
    93
use "subgoal.ML";
wenzelm@5834
    94
berghofe@13402
    95
use "Proof/extraction.ML";
berghofe@11511
    96
wenzelm@17467
    97
cd "Tools"; use "ROOT.ML"; cd "..";
wenzelm@17467
    98
wenzelm@12778
    99
(*configuration for Proof General*)
wenzelm@21941
   100
cd "ProofGeneral"; use "ROOT.ML"; cd "..";
obua@16781
   101
wenzelm@18991
   102
use_thy "Pure";
wenzelm@18991
   103
structure Pure = struct val thy = theory "Pure" end;
wenzelm@18837
   104
wenzelm@18837
   105
Context.add_setup
wenzelm@22796
   106
 (Sign.del_modesyntax Syntax.default_mode Syntax.appl_syntax #>
wenzelm@22796
   107
  Sign.add_syntax Syntax.applC_syntax);
wenzelm@18991
   108
use_thy "CPure";
wenzelm@18991
   109
structure CPure = struct val thy = theory "CPure" end;
wenzelm@15801
   110
wenzelm@17467
   111
(*final ML setup*)
wenzelm@6178
   112
use "install_pp.ML";
wenzelm@6237
   113
val use = ThyInfo.use;
wenzelm@21858
   114
val cd = File.cd o Path.explode;
wenzelm@7938
   115
ml_prompts "ML> " "ML# ";
berghofe@11511
   116
wenzelm@11545
   117
proofs := 0;