defining top-level Old2New transfer, trying to figure out how to handle metavariables

This commit is contained in:
aarne
2014-02-26 14:59:10 +00:00
parent e0a9e01e96
commit b7839dd9df
2 changed files with 65 additions and 152 deletions

View File

@@ -292,6 +292,7 @@ type GFloat = Tree GFloat_
data GFloat_
data Tree :: * -> * where
---- GEMeta :: Int -> [forall a . Tree a] -> Tree a
GAdAP :: GAdA -> GAP -> Tree GAP_
GAdjOrd :: GOrd -> Tree GAP_
GAdvAP :: GAP -> GAdv -> Tree GAP_
@@ -2718,6 +2719,9 @@ instance Gf GVV where
instance Compos Tree where
compos r a f t = case t of
---- GEMeta m x1 -> r (GEMeta m) `a` foldr (a . a (r (:)) . f) (r []) x1
GAdAP x1 x2 -> r GAdAP `a` f x1 `a` f x2
GAdjOrd x1 -> r GAdjOrd `a` f x1
GAdvAP x1 x2 -> r GAdvAP `a` f x1 `a` f x2