merged
authorLars Hupel <lars.hupel@mytum.de>
Fri, 16 Feb 2018 14:41:20 +0100
changeset 67619 37ba3d234fbf
parent 67618 3107dcea3493 (diff)
parent 67617 9f9f64fe1705 (current diff)
child 67620 3817a93a3e5e
merged
--- a/src/HOL/Library/Datatype_Records.thy	Fri Feb 16 13:00:09 2018 +0100
+++ b/src/HOL/Library/Datatype_Records.thy	Fri Feb 16 14:41:20 2018 +0100
@@ -1,3 +1,7 @@
+(*  Title:      HOL/Library/Datatype_Records.thy
+    Author:     Lars Hupel
+*)
+
 section \<open>Records based on BNF/datatype machinery\<close>
 
 theory Datatype_Records
@@ -5,6 +9,23 @@
 keywords "datatype_record" :: thy_decl
 begin
 
+text \<open>
+  This theory provides an alternative, stripped-down implementation of records based on the
+  machinery of the @{command datatype} package.
+
+  It supports:
+  \<^item> similar declaration syntax as records
+  \<^item> record creation and update syntax (using \<open>\<lparr> ... \<rparr>\<close> brackets)
+  \<^item> regular datatype features (e.g. dead type variables etc.)
+  \<^item> ``after-the-fact'' registration of single-free-constructor types as records
+\<close>
+
+text \<open>
+  Caveats:
+  \<^item> there is no compatibility layer; importing this theory will disrupt existing syntax
+  \<^item> extensible records are not supported
+\<close>
+
 no_syntax
   "_constify"           :: "id => ident"                        ("_")
   "_constify"           :: "longid => ident"                    ("_")