Hello, I'd want to create a EDSL where I want to be able to statically ensure that expressions can only be built according to a particular "state". Like in a network application, SMTP client for example, where I can only issue commands if the application is in a certain state. Are there any Haskell examples for this sort of thing? Günther