3 ms·
All that you've done there is allow different event-streams resulting in the same state to be represented in different ways. Which is just bad design. Technica
by contravariant 3y ago
All that you've done there is allow different event-streams resulting in the same state to be represented in different ways. Which is just bad design.
Technically you could also have the even worse situation of equal event-streams leading to different states, but being represented the same way. If you think that won't happen you don't understand concurrency well enough.
If you want to deal with event streams I'd start from the basic state machine:
state :: event -> state