AFSM-0.1.3.0: CHANGELOG.md
## 0.1.3.0
* remove GADTs extension, `SM a b` becomes `SM s a b`.
* change `type SMState s a b = (s -> a -> (SM s a b, b))` to `newtype TF s a b = TF (s -> a -> (SM s a b, b))`. The reason is that TF is a SM without initial storage, and it is the instance of several class type.
* change `data SM s a b = SM (SMState s a b) s` to `data SM s a b = SM (TF s a b) s`.
* `SM s a b` is no longer an instance of Arrow, but `SM () a b` is still an instance of Arrow. `type SMH a b = SM () a b`.
* the `SMFunctor` class, and `smfmap` helps you to use `SM s a b` as a normal function.
* more examples.
## 0.1.2.0
* switch `SM :: s -> (SMState s a b) -> SM a b` to `SM :: (SMState s a b) -> s -> SM a b`.
* the ArrowApp instance
* new functions: foldlSM, foldlDelaySM, delaySM, concatSM.
* working on Event, several undefined functions about Event.
* It's always hard to pick a name! 'Event', 'Evnt', 'Ev' or 'E'?