packages feed

term-rewriting 0.3 → 0.3.0.1

raw patch · 3 files changed

+11/−5 lines, 3 files

Files

Changelog view
@@ -1,3 +1,6 @@+version 0.3.0.1+	- compatibility with ghc-8.6.1+ version 0.3 	- drop Control.Monad.Error import in Data.Rewriting.Term.Parse 	- fix testsuite
src/Data/Rewriting/Substitution/Unify.hs view
@@ -68,11 +68,14 @@             -- assign term to variable             UM.merge (\_ _ -> (t', ())) t u             solve xs-        _ | funari t' == funari u' -> do+        _ | funari t' == funari u' ->             -- matching function applications: expand ...-            FunA _ ts <- expand t t'-            FunA _ us <- expand u u'-            UM.merge (\t _ -> (t, ())) t u+            -- note: avoid `do` notation because `FunA _ ts` is a "failable"+            -- pattern and `UnionM` doesn't have a `MonadFail` instance;+            -- cf. https://wiki.haskell.org/MonadFail_Proposal+            expand t t' >>= \(FunA _ ts) ->+            expand u u' >>= \(FunA _ us) ->+            UM.merge (\t _ -> (t, ())) t u >>             -- ... and equate the argument lists.             solve (zip ts us ++ xs)         _ -> do
term-rewriting.cabal view
@@ -1,5 +1,5 @@ name:          term-rewriting-version:       0.3+version:       0.3.0.1 stability:     experimental author:        Martin Avanzini,                Bertram Felgenhauer,