packages feed

frpnow 0.17 → 0.18

raw patch · 4 files changed

+8/−1 lines, 4 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

- Control.FRPNow.BehaviorEnd: behavior :: BehaviorEnd x a -> Behavior x
- Control.FRPNow.BehaviorEnd: end :: BehaviorEnd x a -> Event a
- Control.FRPNow.BehaviorEnd: instance (Applicative b, Applicative e) => Applicative (b :. e)
- Control.FRPNow.BehaviorEnd: instance (Functor a, Functor b) => Functor (a :. b)
- Control.FRPNow.BehaviorEnd: instance (Monad b, Plan b) => Swap b (BehaviorEnd x)
- Control.FRPNow.BehaviorEnd: instance (Swap b e, Sample b) => Sample (b :. e)
- Control.FRPNow.BehaviorEnd: instance Applicative (BehaviorEnd x)
- Control.FRPNow.BehaviorEnd: instance Functor (BehaviorEnd x)
- Control.FRPNow.BehaviorEnd: instance Monad (BehaviorEnd x)
- Control.FRPNow.BehaviorEnd: instance Plan b => Swap b Event
- Control.FRPNow.BehaviorEnd: instance Swap f g => Monad (f :. g)
- Control.FRPNow.BehaviorEnd: open :: (:.) f g x -> f (g x)
- Control.FRPNow.Core: instance Applicative Behavior
- Control.FRPNow.Core: instance Applicative Event
- Control.FRPNow.Core: instance Applicative Now
- Control.FRPNow.Core: instance Exception FRPWaitsForNeverException
- Control.FRPNow.Core: instance Functor Behavior
- Control.FRPNow.Core: instance Functor Event
- Control.FRPNow.Core: instance Functor Now
- Control.FRPNow.Core: instance Monad Behavior
- Control.FRPNow.Core: instance Monad Event
- Control.FRPNow.Core: instance Monad Now
- Control.FRPNow.Core: instance MonadFix Behavior
- Control.FRPNow.Core: instance MonadFix Now
- Control.FRPNow.Core: instance MonadIO Now
- Control.FRPNow.Core: instance Show FRPWaitsForNeverException
- Control.FRPNow.Core: instance Typeable FRPWaitsForNeverException
- Control.FRPNow.EvStream: instance Functor EvStream
- Control.FRPNow.EvStream: instance Monoid (EvStream a)
- Control.FRPNow.Lib: instance Plan Behavior
- Control.FRPNow.Lib: instance Plan Now
- Control.FRPNow.Lib: instance Sample Behavior
- Control.FRPNow.Lib: instance Sample Now
- Control.FRPNow.Time: instance (Eq a, Floating a, Ord a) => VectorSpace (a, a) a
- Control.FRPNow.Time: instance (Eq a, Floating a, Ord a) => VectorSpace (a, a, a) a
- Control.FRPNow.Time: instance (Eq a, Floating a, Ord a) => VectorSpace (a, a, a, a) a
- Control.FRPNow.Time: instance (Eq a, Floating a, Ord a) => VectorSpace (a, a, a, a, a) a
- Control.FRPNow.Time: instance Eq t => Eq (TimeTag t a)
- Control.FRPNow.Time: instance VectorSpace Double Double
- Control.FRPNow.Time: instance VectorSpace Float Float
+ Control.FRPNow.BehaviorEnd: [behavior] :: BehaviorEnd x a -> Behavior x
+ Control.FRPNow.BehaviorEnd: [end] :: BehaviorEnd x a -> Event a
+ Control.FRPNow.BehaviorEnd: [open] :: (:.) f g x -> f (g x)
+ Control.FRPNow.BehaviorEnd: instance (Control.FRPNow.BehaviorEnd.Swap b e, Control.FRPNow.Lib.Sample b) => Control.FRPNow.Lib.Sample (b Control.FRPNow.BehaviorEnd.:. e)
+ Control.FRPNow.BehaviorEnd: instance (GHC.Base.Applicative b, GHC.Base.Applicative e) => GHC.Base.Applicative (b Control.FRPNow.BehaviorEnd.:. e)
+ Control.FRPNow.BehaviorEnd: instance (GHC.Base.Functor a, GHC.Base.Functor b) => GHC.Base.Functor (a Control.FRPNow.BehaviorEnd.:. b)
+ Control.FRPNow.BehaviorEnd: instance (GHC.Base.Monad b, Control.FRPNow.Lib.Plan b) => Control.FRPNow.BehaviorEnd.Swap b (Control.FRPNow.BehaviorEnd.BehaviorEnd x)
+ Control.FRPNow.BehaviorEnd: instance Control.FRPNow.BehaviorEnd.Swap f g => GHC.Base.Monad (f Control.FRPNow.BehaviorEnd.:. g)
+ Control.FRPNow.BehaviorEnd: instance Control.FRPNow.Lib.Plan b => Control.FRPNow.BehaviorEnd.Swap b Control.FRPNow.Core.Event
+ Control.FRPNow.BehaviorEnd: instance GHC.Base.Applicative (Control.FRPNow.BehaviorEnd.BehaviorEnd x)
+ Control.FRPNow.BehaviorEnd: instance GHC.Base.Functor (Control.FRPNow.BehaviorEnd.BehaviorEnd x)
+ Control.FRPNow.BehaviorEnd: instance GHC.Base.Monad (Control.FRPNow.BehaviorEnd.BehaviorEnd x)
+ Control.FRPNow.Core: instance Control.Monad.Fix.MonadFix Control.FRPNow.Core.Behavior
+ Control.FRPNow.Core: instance Control.Monad.Fix.MonadFix Control.FRPNow.Core.Now
+ Control.FRPNow.Core: instance Control.Monad.IO.Class.MonadIO Control.FRPNow.Core.Now
+ Control.FRPNow.Core: instance GHC.Base.Applicative Control.FRPNow.Core.Behavior
+ Control.FRPNow.Core: instance GHC.Base.Applicative Control.FRPNow.Core.Event
+ Control.FRPNow.Core: instance GHC.Base.Applicative Control.FRPNow.Core.Now
+ Control.FRPNow.Core: instance GHC.Base.Functor Control.FRPNow.Core.Behavior
+ Control.FRPNow.Core: instance GHC.Base.Functor Control.FRPNow.Core.Event
+ Control.FRPNow.Core: instance GHC.Base.Functor Control.FRPNow.Core.Now
+ Control.FRPNow.Core: instance GHC.Base.Monad Control.FRPNow.Core.Behavior
+ Control.FRPNow.Core: instance GHC.Base.Monad Control.FRPNow.Core.Event
+ Control.FRPNow.Core: instance GHC.Base.Monad Control.FRPNow.Core.Now
+ Control.FRPNow.Core: instance GHC.Exception.Exception Control.FRPNow.Core.FRPWaitsForNeverException
+ Control.FRPNow.Core: instance GHC.Show.Show Control.FRPNow.Core.FRPWaitsForNeverException
+ Control.FRPNow.EvStream: collapseSimul :: EvStream a -> EvStream [a]
+ Control.FRPNow.EvStream: instance GHC.Base.Functor Control.FRPNow.EvStream.EvStream
+ Control.FRPNow.EvStream: instance GHC.Base.Monoid (Control.FRPNow.EvStream.EvStream a)
+ Control.FRPNow.Lib: instance Control.FRPNow.Lib.Plan Control.FRPNow.Core.Behavior
+ Control.FRPNow.Lib: instance Control.FRPNow.Lib.Plan Control.FRPNow.Core.Now
+ Control.FRPNow.Lib: instance Control.FRPNow.Lib.Sample Control.FRPNow.Core.Behavior
+ Control.FRPNow.Lib: instance Control.FRPNow.Lib.Sample Control.FRPNow.Core.Now
+ Control.FRPNow.Time: instance (GHC.Classes.Eq a, GHC.Float.Floating a, GHC.Classes.Ord a) => Control.FRPNow.Time.VectorSpace (a, a) a
+ Control.FRPNow.Time: instance (GHC.Classes.Eq a, GHC.Float.Floating a, GHC.Classes.Ord a) => Control.FRPNow.Time.VectorSpace (a, a, a) a
+ Control.FRPNow.Time: instance (GHC.Classes.Eq a, GHC.Float.Floating a, GHC.Classes.Ord a) => Control.FRPNow.Time.VectorSpace (a, a, a, a) a
+ Control.FRPNow.Time: instance (GHC.Classes.Eq a, GHC.Float.Floating a, GHC.Classes.Ord a) => Control.FRPNow.Time.VectorSpace (a, a, a, a, a) a
+ Control.FRPNow.Time: instance Control.FRPNow.Time.VectorSpace GHC.Types.Double GHC.Types.Double
+ Control.FRPNow.Time: instance Control.FRPNow.Time.VectorSpace GHC.Types.Float GHC.Types.Float
+ Control.FRPNow.Time: instance GHC.Classes.Eq t => GHC.Classes.Eq (Control.FRPNow.Time.TimeTag t a)
- Control.FRPNow.Time: integrate :: VectorSpace v time => Behavior time -> Behavior v -> Behavior (Behavior v)
+ Control.FRPNow.Time: integrate :: (VectorSpace v time) => Behavior time -> Behavior v -> Behavior (Behavior v)

Files

ChangeLog view
@@ -1,3 +1,4 @@+0.17 Added EvStream.collapseSimul 0.17 Added EvStream.joinEs 0.16 Added EvStream.delay 0.15 Fixes a Prelude.undefined error
Control/FRPNow/Core.hs view
@@ -1,6 +1,7 @@ {-# LANGUAGE DeriveDataTypeable, LambdaCase,RecursiveDo, FlexibleContexts, ExistentialQuantification, Rank2Types,GeneralizedNewtypeDeriving  #-} ----------------------------------------------------------------------------- -- |+ -- Module      :  Control.FRPNow.Core -- Copyright   :  (c) Atze van der Ploeg 2015 -- License     :  BSD-style
Control/FRPNow/EvStream.hs view
@@ -19,6 +19,7 @@    -- * Construction    emptyEs,     merge,+collapseSimul, dropEv,    toChanges,    edges,@@ -93,6 +94,10 @@   nxt (Simul       l r) = l ++ r   nxt (LeftEarlier   l) = l   nxt (RightEarlier  r) = r++-- | Collapses each set simultanious events into a single event carrying the list of occurances.+collapseSimul :: EvStream a -> EvStream [a]+collapseSimul (S s) = S $ ((\x -> [x]) <$>) <$> s  -- | Obtain the next element of the event stream. The obtained event is guaranteed to lie in the future. next :: EvStream a -> Behavior (Event a)
frpnow.cabal view
@@ -1,5 +1,5 @@ Name:                frpnow-Version:             0.17+Version:             0.18 Synopsis:	     Principled practical FRP Description:         FRP with first-class behaviors and interalized IO, without space leaks License:             BSD3