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;
     1 (*  Title:      Pure/ROOT.ML
     2     ID:         $Id$
     3 
     4 Pure Isabelle.
     5 *)
     6 
     7 val banner = "Pure Isabelle";
     8 val version = "Isabelle repository version";    (*filled in automatically!*)
     9 
    10 print_depth 10;
    11 
    12 (*basic tools*)
    13 use "General/basics.ML";
    14 use "library.ML";
    15 
    16 (*generic non-sense*)
    17 val quick_and_dirty = ref false;
    18 val print_mode = ref ([]: string list);
    19 fun print_mode_active s = member (op =) (! print_mode) s;
    20 
    21 cd "General"; use "ROOT.ML"; cd "..";
    22 
    23 (*fundamental structures*)
    24 use "name.ML";
    25 use "term.ML";
    26 use "term_subst.ML";
    27 use "General/pretty.ML";
    28 use "sorts.ML";
    29 use "type.ML";
    30 use "context.ML";
    31 use "context_position.ML";
    32 use "compress.ML";
    33 use "type_infer.ML";
    34 
    35 (*inner syntax module*)
    36 use "Syntax/lexicon.ML";
    37 use "Syntax/ast.ML";
    38 use "Syntax/syn_ext.ML";
    39 use "Syntax/parser.ML";
    40 use "Syntax/type_ext.ML";
    41 use "Syntax/syn_trans.ML";
    42 use "Syntax/mixfix.ML";
    43 use "Syntax/printer.ML";
    44 use "Syntax/syntax.ML";
    45 structure Hidden = struct end;
    46 structure Lexicon = Hidden;
    47 structure Ast = Hidden;
    48 structure SynExt = Hidden;
    49 structure Parser = Hidden;
    50 structure TypeExt = Hidden;
    51 structure SynTrans = Hidden;
    52 structure Mixfix = Hidden;
    53 structure Printer = Hidden;
    54 
    55 use "General/ml_syntax.ML";
    56 
    57 (*core of tactical proof system*)
    58 use "envir.ML";
    59 use "logic.ML";
    60 use "consts.ML";
    61 use "sign.ML";
    62 use "pattern.ML";
    63 use "unify.ML";
    64 use "net.ML";
    65 use "defs.ML";
    66 use "theory.ML";
    67 use "proofterm.ML";
    68 use "thm.ML";
    69 use "more_thm.ML";
    70 use "fact_index.ML";
    71 use "pure_thy.ML";
    72 use "display.ML";
    73 use "drule.ML";
    74 use "conv.ML";
    75 use "morphism.ML";
    76 use "variable.ML";
    77 use "tctical.ML";
    78 use "search.ML";
    79 use "tactic.ML";
    80 use "meta_simplifier.ML";
    81 use "conjunction.ML";
    82 use "assumption.ML";
    83 use "goal.ML";
    84 
    85 (*proof term operations*)
    86 use "Proof/reconstruct.ML";
    87 use "Proof/proof_syntax.ML";
    88 use "Proof/proof_rewrite_rules.ML";
    89 use "Proof/proofchecker.ML";
    90 
    91 (*the main Isar system*)
    92 cd "Isar"; use "ROOT.ML"; cd "..";
    93 use "subgoal.ML";
    94 
    95 use "Proof/extraction.ML";
    96 
    97 cd "Tools"; use "ROOT.ML"; cd "..";
    98 
    99 (*configuration for Proof General*)
   100 cd "ProofGeneral"; use "ROOT.ML"; cd "..";
   101 
   102 use_thy "Pure";
   103 structure Pure = struct val thy = theory "Pure" end;
   104 
   105 Context.add_setup
   106  (Sign.del_modesyntax Syntax.default_mode Syntax.appl_syntax #>
   107   Sign.add_syntax Syntax.applC_syntax);
   108 use_thy "CPure";
   109 structure CPure = struct val thy = theory "CPure" end;
   110 
   111 (*final ML setup*)
   112 use "install_pp.ML";
   113 val use = ThyInfo.use;
   114 val cd = File.cd o Path.explode;
   115 ml_prompts "ML> " "ML# ";
   116 
   117 proofs := 0;