nemo
nemo copied to clipboard
Session types for asynchronous networking
In some kinds of protocols (for example, relay networks) it may make sense for both sides of the transmission to be capable of sending to the other side. However, in...
``` rust type Foo = protocol!( Recv usize, Send usize, Nest { Send usize, Nest { Recv usize, Choose [ { Escape Z }, { Send usize, Escape S }...
I want to use something like `bincode` or `serde` or `nom` or something else as a proof-of-concept.
Similar to how session_types works, but specifically for our `Blocking` backend.
None of these have safety implications, but there are a number of coherence constraints ideal for `Choose`: - We don't want types like `Choose` to be expressible. That is, there...