packages feed

language-ats 1.7.3.1 → 1.7.4.0

raw patch · 5 files changed

+74/−1 lines, 5 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Language.ATS: languageATSVersion :: Version

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # language-ats +## 1.7.4.0++  * Add `languageATSVersion`+ ## 1.7.3.1    * Fix bug in parse order for `symintr` declarations
language-ats.cabal view
@@ -1,6 +1,6 @@ cabal-version:   1.18 name:            language-ats-version:         1.7.3.1+version:         1.7.4.0 license:         BSD3 license-file:    LICENSE copyright:       Copyright: (c) 2018-2019 Vanessa McHale@@ -50,6 +50,7 @@         Language.ATS.Types         Language.ATS.Types.Lens         Language.ATS.Rewrite+        Paths_language_ats      default-language: Haskell2010     other-extensions:
src/Language/ATS.hs view
@@ -59,12 +59,15 @@                     , constructorUniversals                     , typeCall                     , typeCallArgs+                    -- * Misecellany+                    , languageATSVersion                     ) where  import           Control.Composition          ((-$)) import           Control.Monad import           Control.Monad.IO.Class import           Control.Monad.Trans.State+import           Data.Version (Version) import           GHC.IO.Handle.FD             (stderr) import           Language.ATS.Lexer import           Language.ATS.Parser@@ -73,7 +76,12 @@ import           Language.ATS.Types import           Language.ATS.Types.Lens import           Lens.Micro+import           Paths_language_ats (version) import           Text.PrettyPrint.ANSI.Leijen hiding ((<$>))++-- | @since 1.7.4.0+languageATSVersion :: Version+languageATSVersion = version  rewriteATS' :: Eq a => (ATS a, FixityState a) -> ATS a rewriteATS' (ATS ds, st) = ATS (rewriteDecl st <$> ds)
+ test/data/finger-tree.out view
@@ -0,0 +1,30 @@+datatype list(a: t@ype+) =+  | cons of (a, list(a))+  | nil++fun concat {a:t@ype+} (list(a), list(a)) : list(a)++typedef digit(a: t@ype+) = list(a)++datatype node(a: t@ype) =+  | node2 of (a, a)+  | node3 of (a, a, a)++datatype finger_tree(a: t@ype+) =+  | empty+  | single of (a)+  | deep of (digit(a), finger_tree(node(a)), digit(a))++symintr <| |>++infixr 5 <|++infixl 5 |>++fun lcons {a:t@ype+} (a, finger_tree(a)) : finger_tree(a)++fun rcons {a:t@ype+} (finger_tree(a), a) : finger_tree(a)++overload <| with lcons++overload |> with rcons
+ test/data/finger-tree.sats view
@@ -0,0 +1,30 @@+datatype list(a: t@ype+) =+  | cons of (a, list(a))+  | nil++fun concat {a:t@ype+} (list(a), list(a)) : list(a)++typedef digit(a: t@ype+) = list(a)++datatype node(a: t@ype) =+  | node2 of (a, a)+  | node3 of (a, a, a)++datatype finger_tree(a: t@ype+) =+  | empty+  | single of (a)+  | deep of (digit(a), finger_tree(node(a)), digit(a))++symintr <| |>++infixr 5 <|++infixl 5 |>++fun lcons {a:t@ype+} (a, finger_tree(a)) : finger_tree(a)++fun rcons {a:t@ype+} (finger_tree(a), a) : finger_tree(a)++overload <| with lcons++overload |> with rcons