packages feed

syntactic 3.6.3 → 3.7

raw patch · 5 files changed

+19/−29 lines, 5 filesdep ~deepseq

Dependency ranges changed: deepseq

Files

src/Language/Syntactic/Decoration.hs view
@@ -51,7 +51,7 @@  instance (NFData1 sym, NFData1 info) => NFData1 (sym :&: info)   where-    rnf1 (s :&: i) = rnf1 s `seq` rnf1 i `seq` ()+    liftRnf r (s :&: i) = liftRnf r s `seq` liftRnf (`seq` ()) i  instance {-# OVERLAPPING #-} Project sub sup => Project sub (sup :&: info)   where
src/Language/Syntactic/Functional.hs view
@@ -74,10 +74,7 @@ import Control.Monad.State import Data.Dynamic import Data.List (genericIndex)-#if MIN_VERSION_GLASGOW_HASKELL(7,10,0,0)-#else-import Data.Proxy  -- Needed by GHC < 7.8-#endif+import Data.Proxy import Data.Map (Map) import qualified Data.Map as Map import Data.Set (Set)@@ -90,9 +87,9 @@   -----------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------- -- * Syntactic constructs-----------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------  -- | Literal data Literal sig@@ -158,8 +155,8 @@  instance NFData1 Binding   where-    rnf1 (Var v) = rnf v-    rnf1 (Lam v) = rnf v+    liftRnf _ (Var v) = rnf v+    liftRnf _ (Lam v) = rnf v  -- | 'equal' does strict identifier comparison; i.e. no alpha equivalence. --@@ -258,8 +255,8 @@  instance NFData1 BindingT   where-    rnf1 (VarT v) = rnf v-    rnf1 (LamT v) = rnf v+    liftRnf _ (VarT v) = rnf v+    liftRnf _ (LamT v) = rnf v  -- | 'equal' does strict identifier comparison; i.e. no alpha equivalence. --@@ -588,9 +585,9 @@   -----------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------- -- * Alpha-equivalence-----------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------  -- | Environment used by 'alphaEq'' type AlphaEnv = [(Name,Name)]@@ -635,9 +632,9 @@   -----------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------- -- * Evaluation-----------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------  -- | Semantic function type of the given symbol signature type family   Denotation sig
src/Language/Syntactic/Functional/WellScoped.hs view
@@ -68,8 +68,8 @@  instance NFData1 BindingWS   where-    rnf1 (VarWS Proxy) = ()-    rnf1 LamWS         = ()+    liftRnf _ (VarWS Proxy) = ()+    liftRnf _ LamWS         = ()  instance Eval BindingWS   where
src/Language/Syntactic/Syntax.hs view
@@ -142,7 +142,7 @@  instance NFData1 sym => NFData (AST sym sig)   where-    rnf (Sym s)  = rnf1 s+    rnf (Sym s)  = liftRnf (`seq` ()) s     rnf (s :$ a) = rnf s `seq` rnf a  -- | Count the number of symbols in an 'AST'@@ -215,8 +215,8 @@  instance (NFData1 sym1, NFData1 sym2) => NFData1 (sym1 :+: sym2)   where-    rnf1 (InjL s) = rnf1 s-    rnf1 (InjR s) = rnf1 s+    liftRnf r (InjL s) = liftRnf r s+    liftRnf r (InjR s) = liftRnf r s  -- | Symbol projection --@@ -397,13 +397,6 @@ -------------------------------------------------------------------------------- -- * Misc. ------------------------------------------------------------------------------------ | Higher-kinded version of 'NFData'-class NFData1 c-  where-    -- | Force a symbol to normal form-    rnf1 :: c a -> ()-    rnf1 s = s `seq` ()  -- | Constrain a symbol to a specific type symType :: Proxy sym -> sym sig -> sym sig
syntactic.cabal view
@@ -1,5 +1,5 @@ Name:           syntactic-Version:        3.6.3+Version:        3.7 Synopsis:       Generic representation and manipulation of abstract syntax Description:    The library provides a generic representation of type-indexed abstract syntax trees                 (or indexed data types in general). It also permits the definition of open syntax@@ -81,7 +81,7 @@     constraints,     containers,     data-hash,-    deepseq,+    deepseq >= 1.4.3.0,     mtl >= 2 && < 3,     syb,     tree-view >= 0.5