Commit Graph

26 Commits

Author SHA1 Message Date
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