doc-src/IsarAdvanced/Codegen/Thy/Codegen.thy
author haftmann
Tue, 10 Oct 2006 12:08:12 +0200
changeset 20948 9b9910b82645
child 21058 a32d357dfd70
permissions -rw-r--r--
initial draft
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
20948
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     1
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     2
(* $Id$ *)
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     3
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     4
theory Codegen
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     5
imports Main
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     6
begin
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     7
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     8
chapter {* Code generation from Isabelle theories *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
     9
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    10
section {* Introduction *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    11
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    12
text {*
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    13
  \cite{isa-tutorial}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    14
*} (* add graphics here *)
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    15
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    16
section {* Basics *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    17
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    18
subsection {* Invoking the code generator *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    19
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    20
subsection {* Theorem selection *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    21
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    22
(* print_codethms, code func, default setup code nofunc *)
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    23
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    24
subsection {* Type classes *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    25
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    26
subsection {* Preprocessing *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    27
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    28
(* preprocessing, print_codethms () *)
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    29
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    30
subsection {* Incremental code generation *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    31
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    32
(* print_codethms (\<dots>) *)
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    33
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    34
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    35
section {* Customizing serialization  *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    36
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    37
section {* Recipes and advanced topics *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    38
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    39
(* understanding the type game, reflexive equations, code inline code_constsubst, code_abstype*)
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    40
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    41
section {* ML interfaces *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    42
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    43
subsection {* codegen\_data.ML *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    44
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    45
subsection {* Implementing code generator applications *}
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    46
9b9910b82645 initial draft
haftmann
parents:
diff changeset
    47
end