Remix.run Logo
▲ sprinkly-dust an hour ago

F-Star and Dijkstra Monads (which are apparently not really monads?) might get you to what you're looking for