diff lib/basis.lig @ 91:4327abd52997

Basic XML stuff
author Adam Chlipala <adamc@hcoop.net>
date Thu, 03 Jul 2008 16:26:28 -0400
parents d3cc191cb25f
children 94afff1ff7f6
line wrap: on
line diff
--- a/lib/basis.lig	Thu Jul 03 11:04:25 2008 -0400
+++ b/lib/basis.lig	Thu Jul 03 16:26:28 2008 -0400
@@ -1,3 +1,22 @@
 type int
 type float
 type string
+
+
+con tag :: {Unit} -> {Unit} -> Type
+
+
+con xml :: {Unit} -> Type
+val cdata : ctx ::: {Unit} -> string -> xml ctx
+val tag : outer ::: {Unit} -> inner ::: {Unit}
+        -> tag outer inner
+        -> xml inner
+        -> xml outer
+val join : shared :: {Unit}
+        -> ctx1 ::: {Unit} -> ctx1 ~ shared
+        -> ctx2 ::: {Unit} -> ctx2 ~ shared
+        -> xml (shared ++ ctx1) -> xml (shared ++ ctx2) -> xml shared
+
+
+val head : tag [Html] [Head]
+val title : tag [Head] []