test/Tools/isac/ADDTESTS/file-depend/Build_Test.thy
author Walther Neuper <neuper@ist.tugraz.at>
Tue, 01 Mar 2011 15:23:59 +0100
branchdecompose-isar
changeset 41905 b772eb34c16c
parent 41900 8391d3789efb
child 41916 73604b24fe92
permissions -rw-r--r--
intermed.update to Isabelle2011: test/../syntax added

present problem: test/Tools/isac/ADDTESTS/filed-depend does not update
neuper@41905
     1
(* Title:   test/Tools/isac/ADDTESTS/file-depend
neuper@41905
     2
   Author:  Walther Neuper
neuper@41905
     3
*)
neuper@41905
     4
neuper@41905
     5
header {* Test file dependencies analogous to ISAC
neuper@41905
     6
neuper@41899
     7
$ cd /usr/local/Isabelle/test/Tools/isac/ADDTESTS/file-depend
neuper@41899
     8
$ /usr/local/Isabelle/bin/isabelle emacs Build_Test.thy &
neuper@41905
     9
*}
neuper@41905
    10
(*----------------------------------------------------------------------------
neuper@41900
    11
theory Build_Test 
neuper@41900
    12
imports 
neuper@41900
    13
  Complex_Main 
neuper@41900
    14
  "1language/Foo_Language"
neuper@41900
    15
  "3knowledge/Foo_KnowALL"
neuper@41900
    16
begin
neuper@41905
    17
----------------------------------------------------------------------------*)
neuper@37946
    18
neuper@41905
    19
theory Build_Test 
neuper@41905
    20
imports 
neuper@41905
    21
  Complex_Main 
neuper@41905
    22
begin
neuper@41905
    23
  use     "0foolibrary.ML"                    ML {* foolibrhs *}
neuper@41905
    24
  use_thy "1language/Foo_Language"          (*ML {* @{const fooprog} *}*)
neuper@41905
    25
  use     "2interpreter/2foointerpreter.ML"   ML {* foointerpret *}
neuper@37946
    26
neuper@41905
    27
text {* The top 'theory ... begin' can be outcommended and done stepwise:
neuper@41905
    28
neuper@41905
    29
  use     "2interpreter/2foointerpreter.ML"
neuper@41905
    30
  use_thy "3knowledge/Foo_Know111"
neuper@41905
    31
  use_thy "3knowledge/Foo_Know222"
neuper@41905
    32
  use_thy "3knowledge/Foo_KnowALL"
neuper@41905
    33
*}
neuper@37946
    34
neuper@37949
    35
text {* the different theories of knowledge are recognized, Const bar*: *}
neuper@37949
    36
ML {* 
neuper@37946
    37
val trm = Syntax.read_term_global @{theory Foo_Know111} 
neuper@37946
    38
  "fooprog (foo111 = bar111)";
neuper@37949
    39
val Const ("Foo_Know111.bar111", _) = foointerpret trm;
neuper@37946
    40
neuper@37946
    41
val trm = Syntax.read_term_global @{theory Foo_Know222} 
neuper@37946
    42
  "fooprog (foo222 = bar222)";
neuper@37949
    43
val Const ("Foo_Know222.bar222", _) = foointerpret trm;
neuper@37946
    44
*}
neuper@37946
    45
neuper@37949
    46
text {* the different theories of knowledge are recognized, Free bar*: *}
neuper@37949
    47
ML {*
neuper@37946
    48
val trm = Syntax.read_term_global @{theory Foo_Know111} 
neuper@37946
    49
  "fooprog (foo222 = bar222)";
neuper@37946
    50
(*Const ("Foo_Language.fooprog", "bool => Foo_Language.foosource") $
neuper@37946
    51
     (Const ("op =", "'a => 'a => bool") $ Free ("foo222", "'a") $
neuper@37946
    52
       Free ("bar222", "'a"))
neuper@37946
    53
   : term*)
neuper@37946
    54
neuper@37946
    55
val trm = Syntax.read_term_global @{theory Foo_Know222} 
neuper@37946
    56
  "fooprog (foo111 = bar111)";
neuper@37946
    57
(*val trm =
neuper@37946
    58
   Const ("Foo_Language.fooprog", "bool => Foo_Language.foosource") $
neuper@37946
    59
     (Const ("op =", "'a => 'a => bool") $ Free ("foo111", "'a") $
neuper@37946
    60
       Free ("bar111", "'a"))
neuper@37946
    61
   : term*)
neuper@41905
    62
*}
neuper@41905
    63
neuper@41905
    64
text {* dir structure reflects ISAC, see Build_Isac.thy:
neuper@41905
    65
/file-depend/0foolibrary.ML
neuper@41905
    66
/file-depend/Build_Test.thy
neuper@41905
    67
/file-depend/README
neuper@41905
    68
neuper@41905
    69
/file-depend/1language/Foo_Language.thy
neuper@41905
    70
neuper@41905
    71
/file-depend/2interpreter/2foointerpreter.ML
neuper@41905
    72
neuper@41905
    73
/file-depend/3knowledge/Foo_Know111.thy
neuper@41905
    74
/file-depend/3knowledge/Foo_Know222.thy
neuper@41905
    75
/file-depend/3knowledge/Foo_KnowALL.thy
neuper@37946
    76
*}