author  wenzelm 
Mon, 04 Oct 1993 15:36:31 +0100  
changeset 19  929ad32d63fc 
parent 2  c67f44be880f 
child 73  075db6ac7f2f 
permissions  rwrr 
19  1 
(* Title: Pure/ROOT.ML 
0  2 
ID: $Id$ 
19  3 
Author: Lawrence C Paulson, Cambridge University Computer Laboratory 
0  4 
Copyright 1993 University of Cambridge 
5 

19  6 
Root file for Pure Isabelle: all modules in proper order for loading. 
7 
Loads pure Isabelle into an empty database (see also Makefile). 

0  8 

19  9 
TO DO: 
0  10 
instantiation of theorems can lead to inconsistent sorting of type vars if 
19  11 
'a::S is already present and 'a::T is introduced. 
0  12 
*) 
13 

14 
val banner = "Pure Isabelle"; 

15 
val version = "February 93"; 

16 

17 
print_depth 1; 

18 

19 
use "library.ML"; 

20 
use "term.ML"; 

21 
use "symtab.ML"; 

22 

23 
structure Symtab = SymtabFun(); 

19  24 

25 
(*Syntax module*) 

0  26 
cd "Syntax"; 
27 
use "ROOT.ML"; 

28 
cd ".."; 

29 

19  30 
(*Theory parser*) 
31 
cd "Thy"; 

32 
use "ROOT.ML"; 

33 
cd ".."; 

34 

0  35 
use "type.ML"; 
36 
use "sign.ML"; 

37 
use "sequence.ML"; 

38 
use "envir.ML"; 

39 
use "pattern.ML"; 

40 
use "unify.ML"; 

41 
use "net.ML"; 

42 
use "logic.ML"; 

43 
use "thm.ML"; 

44 
use "drule.ML"; 

45 
use "tctical.ML"; 

46 
use "tactic.ML"; 

47 
use "goals.ML"; 

48 

49 
(*Will be visible to all objectlogics.*) 

50 
structure Type = TypeFun(structure Symtab=Symtab and Syntax=Syntax); 

51 
structure Sign = SignFun(structure Type=Type and Syntax=Syntax); 

52 
structure Sequence = SequenceFun(); 

53 
structure Envir = EnvirFun(); 

54 
structure Pattern = PatternFun(structure Sign=Sign and Envir=Envir); 

55 
structure Unify = UnifyFun(structure Sign=Sign and Envir=Envir 

19  56 
and Sequence=Sequence and Pattern=Pattern); 
0  57 
structure Net = NetFun(); 
58 
structure Logic = LogicFun(structure Unify=Unify and Net=Net); 

59 
structure Thm = ThmFun(structure Logic=Logic and Unify=Unify and Net=Net 

19  60 
and Pattern=Pattern); 
0  61 
structure Drule = DruleFun(structure Logic=Logic and Thm=Thm); 
62 
structure Tactical = TacticalFun(structure Logic=Logic and Drule=Drule); 

19  63 
structure Tactic = TacticFun(structure Logic=Logic and Drule=Drule 
64 
and Tactical=Tactical and Net=Net); 

0  65 
structure Goals = GoalsFun(structure Logic=Logic and Drule=Drule 
19  66 
and Tactic=Tactic and Pattern=Pattern); 
67 
open BasicSyntax Thm Drule Tactical Tactic Goals; 

0  68 

69 
structure Pure = struct val thy = pure_thy end; 

2
c67f44be880f
moved use of Thy/ROOT.ML to end of file because Thy/read.ML needs Thm
clasohm
parents:
0
diff
changeset

70 

19  71 
use "install_pp.ML"; 
2
c67f44be880f
moved use of Thy/ROOT.ML to end of file because Thy/read.ML needs Thm
clasohm
parents:
0
diff
changeset

72 