src/Pure/ROOT.ML
author berghofe
Sun, 21 Jul 2002 15:37:04 +0200
changeset 13402 e6e826bb8c3c
parent 13271 d0859ff6cd65
child 14781 2be804d1dda9
permissions -rw-r--r--
Added program extraction module.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
19
929ad32d63fc Pure/ROOT.ML
wenzelm
parents: 2
diff changeset
     1
(*  Title:      Pure/ROOT.ML
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
     2
    ID:         $Id$
19
929ad32d63fc Pure/ROOT.ML
wenzelm
parents: 2
diff changeset
     3
    Author:     Lawrence C Paulson, Cambridge University Computer Laboratory
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
     4
    Copyright   1993  University of Cambridge
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
     5
4986
d4f257d3445a tuned msgs;
wenzelm
parents: 4978
diff changeset
     6
Root file for Pure Isabelle.
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
     7
*)
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
     8
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
     9
val banner = "Pure Isabelle";
11835
13d12b99b843 revert to proper version (!);
wenzelm
parents: 11759
diff changeset
    10
val version = "Isabelle repository version";    (*filled in automatically!*)
13d12b99b843 revert to proper version (!);
wenzelm
parents: 11759
diff changeset
    11
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    12
12248
f059876ef1d3 print_depth 10;
wenzelm
parents: 11966
diff changeset
    13
print_depth 10;
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    14
6178
wenzelm
parents: 6164
diff changeset
    15
(*global flags*)
wenzelm
parents: 6164
diff changeset
    16
val print_mode = ref ([]: string list);
6164
a0e9501d56f8 moved print_mode to ROOT.ML
oheimb
parents: 6083
diff changeset
    17
5684
9a3acc4c7c2e structure Hidden = struct end;
wenzelm
parents: 5607
diff changeset
    18
(*fake hiding of private structures*)
9a3acc4c7c2e structure Hidden = struct end;
wenzelm
parents: 5607
diff changeset
    19
structure Hidden = struct end;
4949
c73f72daee64 tuned comments;
wenzelm
parents: 4781
diff changeset
    20
5017
786a17461ab9 moved table.ML, object.ML, seq.ML, name_space.ML to General;
wenzelm
parents: 5004
diff changeset
    21
(*basic tools*)
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    22
use "library.ML";
5017
786a17461ab9 moved table.ML, object.ML, seq.ML, name_space.ML to General;
wenzelm
parents: 5004
diff changeset
    23
cd "General"; use "ROOT.ML"; cd "..";
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    24
use "term.ML";
19
929ad32d63fc Pure/ROOT.ML
wenzelm
parents: 2
diff changeset
    25
4949
c73f72daee64 tuned comments;
wenzelm
parents: 4781
diff changeset
    26
(*inner syntax module*)
6178
wenzelm
parents: 6164
diff changeset
    27
cd "Syntax"; use "ROOT.ML"; cd "..";
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    28
11966
wenzelm
parents: 11919
diff changeset
    29
(*core system*)
2960
a6b56d03ed0d added sorts.ML, type_infer.ML;
wenzelm
parents: 2582
diff changeset
    30
use "sorts.ML";
a6b56d03ed0d added sorts.ML, type_infer.ML;
wenzelm
parents: 2582
diff changeset
    31
use "type_infer.ML";
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    32
use "type.ML";
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    33
use "sign.ML";
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    34
use "envir.ML";
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    35
use "pattern.ML";
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    36
use "unify.ML";
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    37
use "net.ML";
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    38
use "logic.ML";
1528
608dd813b437 Theories are now in theory.ML
paulson
parents: 1498
diff changeset
    39
use "theory.ML";
5004
cf4e3b487caf added theory_data.ML;
wenzelm
parents: 4991
diff changeset
    40
use "theory_data.ML";
6178
wenzelm
parents: 6164
diff changeset
    41
use "context.ML";
11511
ec89f5cff390 Added new files for proof terms.
berghofe
parents: 11065
diff changeset
    42
use "proofterm.ML";
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    43
use "thm.ML";
3986
d788dcb86930 added pure_thy.ML;
wenzelm
parents: 3971
diff changeset
    44
use "display.ML";
13271
d0859ff6cd65 added fact_index.ML;
wenzelm
parents: 12778
diff changeset
    45
use "fact_index.ML";
3986
d788dcb86930 added pure_thy.ML;
wenzelm
parents: 3971
diff changeset
    46
use "pure_thy.ML";
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    47
use "drule.ML";
10413
0e015d9bea4e Added new file meta_simplifier.ML
berghofe
parents: 9959
diff changeset
    48
use "meta_simplifier.ML";
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    49
use "tctical.ML";
1582
97a305db0c9e Updated for new file search.ML
paulson
parents: 1528
diff changeset
    50
use "search.ML";
0
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    51
use "tactic.ML";
a5a9c433f639 Initial revision
clasohm
parents:
diff changeset
    52
11511
ec89f5cff390 Added new files for proof terms.
berghofe
parents: 11065
diff changeset
    53
(*proof term operations*)
11882
954f36537193 reorganize sources to accomodate locales;
wenzelm
parents: 11835
diff changeset
    54
cd "Proof"; use "ROOT.ML"; cd "..";
11511
ec89f5cff390 Added new files for proof terms.
berghofe
parents: 11065
diff changeset
    55
6178
wenzelm
parents: 6164
diff changeset
    56
(*theory system operations*)
wenzelm
parents: 6164
diff changeset
    57
cd "Thy"; use "ROOT.ML"; cd "..";
73
075db6ac7f2f delete_file now has type string -> unit in both NJ and POLY,
clasohm
parents: 19
diff changeset
    58
5834
c6fea8488ce7 added Isar;
wenzelm
parents: 5684
diff changeset
    59
(*the Isar subsystem*)
6178
wenzelm
parents: 6164
diff changeset
    60
cd "Isar"; use "ROOT.ML"; cd "..";
5834
c6fea8488ce7 added Isar;
wenzelm
parents: 5684
diff changeset
    61
6693
fec75b36a809 added Interface/ROOT.ML Interface/isamode.ML Interface/proof_general.ML;
wenzelm
parents: 6365
diff changeset
    62
use "axclass.ML";
11511
ec89f5cff390 Added new files for proof terms.
berghofe
parents: 11065
diff changeset
    63
use "codegen.ML";
13402
e6e826bb8c3c Added program extraction module.
berghofe
parents: 13271
diff changeset
    64
use "Proof/extraction.ML";
11511
ec89f5cff390 Added new files for proof terms.
berghofe
parents: 11065
diff changeset
    65
11966
wenzelm
parents: 11919
diff changeset
    66
(*old-style goal package*)
wenzelm
parents: 11919
diff changeset
    67
use "goals.ML";
wenzelm
parents: 11919
diff changeset
    68
12778
3120e338ffae Interface/proof_general.ML move to proof_general.ML;
wenzelm
parents: 12248
diff changeset
    69
(*configuration for Proof General*)
3120e338ffae Interface/proof_general.ML move to proof_general.ML;
wenzelm
parents: 12248
diff changeset
    70
use "proof_general.ML";
6693
fec75b36a809 added Interface/ROOT.ML Interface/isamode.ML Interface/proof_general.ML;
wenzelm
parents: 6365
diff changeset
    71
6178
wenzelm
parents: 6164
diff changeset
    72
(*final Pure theory setup*)
5211
c02b0c727780 late setup of Pure and CPure;
wenzelm
parents: 5113
diff changeset
    73
use "pure.ML";
c02b0c727780 late setup of Pure and CPure;
wenzelm
parents: 5113
diff changeset
    74
5568
0067dd151d7a added Int to BasisLibrary
paulson
parents: 5244
diff changeset
    75
(*several object-logics declare theories that hide basis library structures*)
4209
4e0c98184285 structure BasisLibrary;
wenzelm
parents: 3986
diff changeset
    76
structure BasisLibrary =
4e0c98184285 structure BasisLibrary;
wenzelm
parents: 3986
diff changeset
    77
struct
6178
wenzelm
parents: 6164
diff changeset
    78
  structure List = List;
wenzelm
parents: 6164
diff changeset
    79
  structure Option = Option;
wenzelm
parents: 6164
diff changeset
    80
  structure Bool = Bool;
wenzelm
parents: 6164
diff changeset
    81
  structure String = String;
wenzelm
parents: 6164
diff changeset
    82
  structure Int = Int;
wenzelm
parents: 6164
diff changeset
    83
  structure Real = Real;
4209
4e0c98184285 structure BasisLibrary;
wenzelm
parents: 3986
diff changeset
    84
end;
4e0c98184285 structure BasisLibrary;
wenzelm
parents: 3986
diff changeset
    85
6178
wenzelm
parents: 6164
diff changeset
    86
use "install_pp.ML";
6226
42c94393d39e use, cd;
wenzelm
parents: 6178
diff changeset
    87
6237
699b4daf1451 Session.finish ();
wenzelm
parents: 6226
diff changeset
    88
val use = ThyInfo.use;
6226
42c94393d39e use, cd;
wenzelm
parents: 6178
diff changeset
    89
val cd = File.cd o Path.unpack;
42c94393d39e use, cd;
wenzelm
parents: 6178
diff changeset
    90
7938
e45599caee6c activate ml_prompts;
wenzelm
parents: 6783
diff changeset
    91
ml_prompts "ML> " "ML# ";
11511
ec89f5cff390 Added new files for proof terms.
berghofe
parents: 11065
diff changeset
    92
11545
0b56d9c90dcf final proofs := 0;
wenzelm
parents: 11511
diff changeset
    93
proofs := 0;