diff src/ur/feed.urs @ 1:8de269c09617

Outputting a summary of Marginal Revolution RSS feed
author Adam Chlipala <adam@chlipala.net>
date Tue, 11 Jan 2011 13:17:44 -0500
parents ad85b8813e8a
children ea0ca570c121
line wrap: on
line diff
--- a/src/ur/feed.urs	Tue Jan 11 10:31:48 2011 -0500
+++ b/src/ur/feed.urs	Tue Jan 11 13:17:44 2011 -0500
@@ -1,1 +1,14 @@
-val fetch : string -> transaction string
+con pattern :: Type -> Type -> Type
+
+con tagInternal :: {Unit} -> Type
+
+val tag : attrs ::: {Unit} -> folder attrs -> string -> $(mapU string attrs)
+          -> pattern (tagInternal attrs) {Attrs : $(mapU string attrs), Cdata : option string}
+
+con childrenInternal :: Type -> {Type} -> Type
+
+val children : parentI ::: Type -> parent ::: Type -> children ::: {(Type * Type)}
+               -> pattern parentI parent -> $(map (fn (i, d) => pattern i d) children) -> folder children
+               -> pattern (childrenInternal parentI (map fst children)) (parent * $(map snd children))
+
+val app : internal ::: Type -> data ::: Type -> pattern internal data -> (data -> transaction {}) -> string -> transaction {}