Miguel Negrão
Miguel Negrão
Looking at the test `prop_basic_time_increasing` If I add some traces: ```Haskell prop_basic_time_increasing = forAll myStream $ evalT $ Always $ prop (sf, pred) where myStream :: Gen (SignalSampleStream Float) myStream...
The function [`evalSF`](https://github.com/ivanperez-keera/Yampa/blob/6eeb4ee413509f4931b80b0ea9f99e2da3768f5d/yampa-test/src/FRP/Yampa/Stream.hs#L142) seems to be correct. The issue is in `evalT` which implements a Linear temporal logic. The [definition of `evalT`](https://github.com/ivanperez-keera/Yampa/blob/6eeb4ee413509f4931b80b0ea9f99e2da3768f5d/yampa-test/src/FRP/Yampa/LTLFuture.hs#L41) is somewhat convoluted, and somewhere in it something...
It was with the version of bearriver in hackage.
I believe this would make `mapMaybeS` and `mapMSF` special cases of `traverse'`. Should also work for `Vector`, `Seq`, vector-sized's `Vector`, etc. I find it quite useful.
I would also be interested in using ghc-mod with single file scripts either running via nix-shell or just with plain [runhaskell](http://www.haskellforall.com/2015/01/use-haskell-for-shell-scripting.html). Are there plans for this ?
Before the last commit my version of traverse' was not as strict as `resampleList`: ``` > take 4 $ head $ fst $ runIdentity $ steps (traverse' (arr id) ::...
Refactored to its own module `LiveCoding.Cell.Profunctor` and added tests.
> I'm more and more convinced that I implemented `resampleList` incorrectly. I had implemented it this way to match the strictness in `resampleList`, so that changing to an implementation of...
> Will that evaluate the list structure strictly? I'd expect it doesn't. The traversal of the traversable structure is lazy when using State.Lazy: ```Haskell Prelude Control.Monad.Trans.State.Lazy> take 2 $ fst...
I've refactored the PR: - Renamed `Choice` to `CellChoice` so it doesn't clash with profunctors' `Choice`. - Moved code to `Cell.lhs` - `traverse'` is using `Control.Monad.Trans.State.Lazy`. - Reimplemented resampleList, etc...