Marco Perone
3cc5b668ba
disable global OverloadedStrings
2023-02-27 17:05:45 +01:00
Marco Perone
432cf8ad6c
Decider can be rebuilt out of its own outputs
2023-02-27 17:05:45 +01:00
Marco Perone
d488b9baba
rename Compose to Sequential
2023-02-27 17:05:45 +01:00
Marco Perone
380ed98093
rename CRM to Crem
2023-02-27 17:05:45 +01:00
Marco Perone
b5cb36c0a9
use Mermaid diagrams for documentation
2023-02-27 17:05:45 +01:00
Marco Perone
41fd334f17
render all vertices of a machine
2023-02-27 17:05:45 +01:00
Marco Perone
bfb19e9923
render the flow of a machine
2023-02-27 17:05:45 +01:00
Marco Perone
99a85c1727
move examples into the main package
2023-02-27 17:05:45 +01:00
Marco Perone
0f1fe42893
improvements from Alex code review
2023-02-27 17:05:45 +01:00
Marco Perone
dd7ac5d833
test cases with loan details
2023-02-27 17:05:45 +01:00
Marco Perone
14f9d03939
use Feedback constructor instead of Loop
2023-02-27 17:05:45 +01:00
Marco Perone
57df8ae1c3
RiskManager example
2023-02-27 17:05:45 +01:00
Marco Perone
8e3f21b7a4
add Kleisli constructor
2023-02-27 17:05:45 +01:00
Marco Perone
743242aaf4
allow machines to execute effects when emitting output
2023-02-27 17:05:45 +01:00
Marco Perone
e096f7d33f
add Loop constructor to state machines
2023-02-27 17:05:45 +01:00
Marco Perone
ca4d6826ad
StateMachine is a costrong profunctor
...
implement that by showing that `StateMachine a b` is isomorhpic to `NonEmpty a -> b`
Also:
- remove singleVertexTopology and use trivialTopology instead
- simplify Demote condition
- generalize trivialTopology for any possible state
2023-02-27 17:05:45 +01:00
Marco Perone
f8306d2a4f
implement unrestrictedMachine
...
add example of an unrestricted machine with boolean state
2023-01-26 18:16:23 +01:00
Marco Perone
dce575e4cf
check with examples that run is working properly
2023-01-26 17:19:21 +01:00
Marco Perone
863db1da64
pass initial state as argument to example machines
2023-01-26 17:19:21 +01:00
Marco Perone
c606edee64
always allow the identity transition
2023-01-26 12:11:29 +01:00
Marco Perone
b64705820f
explore using gadts for AllowedTransition definition
2023-01-26 12:11:29 +01:00
Marco Perone
75fd22d4c9
define composition of state machines
2023-01-10 16:42:13 +01:00
Marco Perone
088077963a
Start defining a compositional state machine
2023-01-10 12:36:08 +01:00
Marco Perone
07c22a94f4
Factor Topology out of BaseMachine
2023-01-10 12:35:35 +01:00
Marco Perone
739f466589
Render a base state machine
...
Add tests
Remove Mk from constructors
2023-01-09 17:53:36 +01:00
Marco Perone
24c4870359
define basic examples
2023-01-05 18:01:15 +01:00