comparison lib/ur/top.urs @ 905:7a4b026e45dd

Library improvements; proper list [un]urlification; remove server-side ServerCalls; eta reduction in type inference
author Adam Chlipala <adamc@hcoop.net>
date Sun, 09 Aug 2009 16:13:27 -0400
parents d1d0b18afd3d
children 8e540df3294d
comparison
equal deleted inserted replaced
904:6d9538ce94d8 905:7a4b026e45dd
46 -> xml ctx use [] 46 -> xml ctx use []
47 47
48 val mp : K --> tf1 :: (K -> Type) -> tf2 :: (K -> Type) 48 val mp : K --> tf1 :: (K -> Type) -> tf2 :: (K -> Type)
49 -> (t ::: K -> tf1 t -> tf2 t) 49 -> (t ::: K -> tf1 t -> tf2 t)
50 -> r :: {K} -> folder r -> $(map tf1 r) -> $(map tf2 r) 50 -> r :: {K} -> folder r -> $(map tf1 r) -> $(map tf2 r)
51 val map2 : K1 --> K2 --> tf1 :: (K1 -> Type) -> tf2 :: (K2 -> Type) -> tf :: (K1 -> K2) 51 val map2 : K --> tf1 :: (K -> Type) -> tf2 :: (K -> Type) -> tf3 :: (K -> Type)
52 -> (t ::: K1 -> tf1 t -> tf2 (tf t)) 52 -> (t ::: K -> tf1 t -> tf2 t -> tf3 t)
53 -> r :: {K1} -> folder r -> $(map tf1 r) -> $(map tf2 (map tf r)) 53 -> r :: {K} -> folder r -> $(map tf1 r) -> $(map tf2 r) -> $(map tf3 r)
54 54
55 val foldUR : tf :: Type -> tr :: ({Unit} -> Type) 55 val foldUR : tf :: Type -> tr :: ({Unit} -> Type)
56 -> (nm :: Name -> rest :: {Unit} 56 -> (nm :: Name -> rest :: {Unit}
57 -> [[nm] ~ rest] => 57 -> [[nm] ~ rest] =>
58 tf -> tr rest -> tr ([nm] ++ rest)) 58 tf -> tr rest -> tr ([nm] ++ rest))