HMarkov 1.0.0.3 → 1.0.1.0
raw patch · 2 files changed
+24/−7 lines, 2 filesdep ~basePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base
API changes (from Hackage documentation)
- Data.Markov.HMarkov.Helpers: CMarkovMap :: (Vector a) -> (Vector (Vector Double)) -> CountMarkovMap a
- Data.Markov.HMarkov.Helpers: MarkovMap :: Vector a -> Vector (Vector Double) -> MarkovMap a
- Data.Markov.HMarkov.Helpers: [_idx] :: MarkovMap a -> Vector a
- Data.Markov.HMarkov.Helpers: [_mMap] :: MarkovMap a -> Vector (Vector Double)
- Data.Markov.HMarkov.Helpers: buildMap :: (Eq a) => Vector a -> MarkovMap a
- Data.Markov.HMarkov.Helpers: data CountMarkovMap a
- Data.Markov.HMarkov.Helpers: data MarkovMap a
- Data.Markov.HMarkov.Helpers: ded :: (Eq a) => Vector a -> Vector a
- Data.Markov.HMarkov.Helpers: getNext :: (Eq a) => a -> Double -> MarkovMap a -> a
- Data.Markov.HMarkov.Helpers: initMap :: (Eq a) => Vector a -> CountMarkovMap a
- Data.Markov.HMarkov.Helpers: instance GHC.Show.Show a => GHC.Show.Show (Data.Markov.HMarkov.Helpers.MarkovMap a)
- Data.Markov.HMarkov.Helpers: makeSlices :: Vector a -> Vector (Vector a)
- Data.Markov.HMarkov.Helpers: nrmlz :: Vector Double -> Vector Double
- Data.Markov.HMarkov.Helpers: pix :: Double -> Vector Double -> Int
- Data.Markov.HMarkov.Helpers: sumP :: Vector Double -> Vector Double
- Data.Markov.HMarkov.Helpers: toMarkovMap :: CountMarkovMap a -> MarkovMap a
- Data.Markov.HMarkov.Helpers: updateMarkov :: (Eq a) => a -> a -> CountMarkovMap a -> CountMarkovMap a
- Data.Markov.HMarkov.Helpers: vApply :: (a -> a -> b -> c) -> b -> Vector a -> c
- Data.Markov.HMarkov.Helpers: vidx :: (Eq a) => a -> Vector a -> Int
Files
- HMarkov.cabal +19/−7
- src/Data/Markov/HMarkov.hs +5/−0
HMarkov.cabal view
@@ -1,5 +1,5 @@ name: HMarkov-version: 1.0.0.3+version: 1.0.1.0 synopsis: Markov-generated sequences description: Sequences generated by trained Markov models homepage: https://github.com/swizzard/HMarkov#readme@@ -14,17 +14,29 @@ library hs-source-dirs: src- exposed-modules: Data.Markov.HMarkov, Data.Markov.HMarkov.Helpers- build-depends: base >= 4.7 && < 5, lens, mtl,- random, vector+ exposed-modules: Data.Markov.HMarkov+ other-modules: Data.Markov.HMarkov.Helpers+ build-depends: base >= 4.7 && < 5+ , lens+ , mtl+ , random+ , vector default-language: Haskell2010 test-suite HMarkov-test type: exitcode-stdio-1.0- hs-source-dirs: test+ hs-source-dirs: test, src main-is: Spec.hs- build-depends: base, HMarkov, QuickCheck, tasty, tasty-hunit,- tasty-quickcheck, random, vector+ build-depends: base >= 4.7 && < 5+ , HMarkov+ , lens+ , mtl+ , QuickCheck+ , random+ , tasty+ , tasty-hunit+ , tasty-quickcheck+ , vector ghc-options: -threaded -rtsopts -with-rtsopts=-N default-language: Haskell2010
src/Data/Markov/HMarkov.hs view
@@ -59,6 +59,11 @@ buildProc :: (Eq a, MonadPlus m) => V.Vector a -> a -> StdGen -> MarkovProcess m a buildProc xs x gen = MarkovProcess (buildMap xs) gen x mzero +-- | Build a MarkovProcess from a vector of elements and a starting element, using+-- 'getStdGen' for randomness+buildProcIO :: (Eq a, MonadPlus m) => V.Vector a -> a -> IO (MarkovProcess m a)+buildProcIO xs x = fmap (buildProc xs x) getStdGen+ -- | Run a MarkovProcess once, generating a new element that is appended to the -- accumulator runMarkov :: (Eq a, MonadPlus m) => MarkovProcess m a -> (m a, MarkovProcess m a)