update examples
[coq-hetmet.git] / examples / Demo.hs
1 {-# OPTIONS_GHC -XRankNTypes -XScopedTypeVariables -XFlexibleContexts -XModalTypes -XKindSignatures -fcoqpass -XMultiParamTypeClasses -dcore-lint #-}
2 import GHC.HetMet.GArrow
3 import GHC.HetMet.CodeTypes
4 import GHC.HetMet.Private
5 import GArrowTikZ
6
7 {-
8 foo :: (forall g a . <[ () -> a
9                  PGArrow g (GArrowUnit g) a ->
10                  (forall b . PGArrow g (GArrowTensor g b b) b) ->
11 -}
12 --foo con mer   = <[ ~~mer ~~con ~~con ]>
13 foo f = <[ ~~f ]>
14
15 --tester2 f = <[ \x -> ~~f x x ]>
16
17 main = tikz' $ \a b -> pga_flatten (foo (pga_unflatten a))