Modulevortex-call-0.1.1.0GHC2024
Vortex.Call
Calls without elaboration. A Table maps operation names to functions from textual arguments into the DSL's monad; dispatch looks a Call up and applies it. What is lost against a block is composition — one operation, literal arguments — which is exactly the shape of a D-Bus method call. What is kept is everything after the term exists: the wisp-indexed model, the fuel, the trace.
A streaming operation (stream0, stream1) runs without fuel: it is a subscription, emitting Said frames until the peer goes away. That is the D-Bus signal, as a call that does not return.
- 2 types
- 9 values
- Packagevortex-call-0.1.1.0
- Exports11
- LanguageGHC2024
- LicenceMIT
- SourceCall.hs
A subscription: no fuel, ends with the peer.
Look a call up: whether it is metered, and the action.
A frame that is a Call rather than source.
One frame's terminal reply: the call it names run under its fuel,
the table's names for Call ":commands" [], or why it is refused.
What the call says on the way goes to the Emit.
Drive a session from a table alone — the shell of a process that
carries no GHC, such as init. The table is chosen per wisp, so
authorization is which operations the caller can even name;
Call ":commands" [] lists them. An Exec session is one call: its
command is answered and the session ends, as a shell answers a
block; any other session answers each frame until the peer goes.