From: Adam Megacz Date: Sun, 1 May 2011 04:18:41 +0000 (-0700) Subject: add experimental GArrowStatic X-Git-Url: http://git.megacz.com/?p=ghc-base.git;a=commitdiff_plain;h=b3473ded8aed5bd13f82d8fc68aa0c710520d979 add experimental GArrowStatic --- diff --git a/GHC/HetMet/GArrow.hs b/GHC/HetMet/GArrow.hs index c340fe2..0c32468 100644 --- a/GHC/HetMet/GArrow.hs +++ b/GHC/HetMet/GArrow.hs @@ -183,7 +183,14 @@ class (GArrowSTLC g (**) u (~>), - - - +------------------------------------------------------------------------ +-- Experimental, Not Yet Exported + +-- See Lindley, Wadler, and Yallop '08 -- except that here ga_force +-- is primitive since there is no "arr" to define it in terms of. +class GArrow g (**) u => GArrowStatic g (**) u (~>) where + ga_delay :: g a b -> g u (a~>b) + ga_force :: g u (a~>b) -> g a b + -- "ga_static/force_delay" forall a . force (delay a) = a + -- "ga_static/delay_force" forall a . delay (force a) = a