@@ -1,4 +1,7 @@
1−<div class="short">
1+---
@@ -20,27 +23,19 @@ applications. Eyre exposes `%gall`'s interface over http, and ames does
20the same over the ames network. `%gall` uses ford to compile and run the
23the same over the ames network. `%gall` uses ford to compile and run the
21applications.
24applications.
25−------------------------------------------------------------------------
30`%gall` accepts the following cards. The first three are the most
29`%gall` accepts the following cards. The first three are the most
31commonly used, while the others are primarily used internally.
30commonly used, while the others are primarily used internally.
36Sends a message to an app. This will result in a call to the app's
34Sends a message to an app. This will result in a call to the app's
37`++poke` arm. The response is exactly one of a `%nice` if the action
35`++poke` arm. The response is exactly one of a `%nice` if the action
38succeeded or a `%mean` if not.
36succeeded or a `%mean` if not.
40−------------------------------------------------------------------------
45Subscribes to a stream from an app. This will result in a call to the
40Subscribes to a stream from an app. This will result in a call to the
46app's either `++peek` or `++peer` arm. The first response will always be
41app's either `++peek` or `++peer` arm. The first response will always be
@@ -51,36 +46,26 @@ either a differntial or full update to the data stream. There may be a
51`%mean`, which indicates that the subscription has been canceled and no
46`%mean`, which indicates that the subscription has been canceled and no
52more responses will be received along this stream.
47more responses will be received along this stream.
54−------------------------------------------------------------------------
59Unsubscribes the current duct from its stream. This receives a response
52Unsubscribes the current duct from its stream. This receives a response
60of either a `%nice` or a `%mean`. Note that a response of `%nice` does
53of either a `%nice` or a `%mean`. Note that a response of `%nice` does
61not imply that the current duct was in fact subscribed to any stream.
54not imply that the current duct was in fact subscribed to any stream.
63−------------------------------------------------------------------------
68Initializes a ship's apps. This should be called exactly once for each
58Initializes a ship's apps. This should be called exactly once for each
69ship on the pier. This produces no moves in response.
59ship on the pier. This produces no moves in response.
71−------------------------------------------------------------------------
76Instantiates a child app. The app will be at path `[p parent-path]`, and
63Instantiates a child app. The app will be at path `[p parent-path]`, and
77it will be an instance of the `q` app. The only response will be `%gone`
64it will be an instance of the `q` app. The only response will be `%gone`
78when the child dies.
65when the child dies.
80−------------------------------------------------------------------------
85Signifies a remote request from ames. `r` should be of type `rook`. This
70Signifies a remote request from ames. `r` should be of type `rook`. This
86how an app on a foreign ship may send a `%mess`, `%show`, or `%nuke`
71how an app on a foreign ship may send a `%mess`, `%show`, or `%nuke`
@@ -90,10 +75,8 @@ should use `%rote` and `%roth` is ames. Formally, the response is either
90a `%nice` or a `%mean`, which ames uses to give a positive or negative
75a `%nice` or a `%mean`, which ames uses to give a positive or negative
91ack. A logical response comes by passing a `%roth` card.
76ack. A logical response comes by passing a `%roth` card.
93−------------------------------------------------------------------------
98Gives the response received from a remote request. `r` should be of type
81Gives the response received from a remote request. `r` should be of type
99`roon`. This is how an app responds to a foreign request with a `%rush`,
82`roon`. This is how an app responds to a foreign request with a `%rush`,
@@ -102,10 +85,8 @@ Gives the response received from a remote request. `r` should be of type
102need to acknowledge these responses since they're really independent
85need to acknowledge these responses since they're really independent
103one-way messages.
86one-way messages.
105−------------------------------------------------------------------------
107−`%wipe`
89+### `%wipe`
110Wipes the given app from memory. This is generally considered a hack,
91Wipes the given app from memory. This is generally considered a hack,
111but it is sometimes useful during development to wipe the state of an
92but it is sometimes useful during development to wipe the state of an
@@ -113,10 +94,8 @@ app. We don't guarantee that this actually completely wipes the app.
113Generally, you want to use a `%cide` card if you actually want to kill
94Generally, you want to use a `%cide` card if you actually want to kill
114an app. This gives no response.
95an app. This gives no response.
116−------------------------------------------------------------------------
118−`%cide`
98+### `%cide`
121Kills an app and all its children. Even though it's not technically a
100Kills an app and all its children. Even though it's not technically a
122part of `%gall`'s interface since it's not in `++kiss` and can't be
101part of `%gall`'s interface since it's not in `++kiss` and can't be
@@ -124,38 +103,30 @@ called from the outside, it's worth mentioning `%cide`, which may be
124called from within `%gall` apps. It should call `++part` to allow the
103called from within `%gall` apps. It should call `++part` to allow the
125app any last words. This gives no response.
104app any last words. This gives no response.
127−------------------------------------------------------------------------
129Service Gates
106Service Gates
130−=============
107+-------------
132−[`++poke`]()
109+### `++poke`
135Handles incoming messages. Most commonly with an associated `%logo`. For
111Handles incoming messages. Most commonly with an associated `%logo`. For
136example `++poke-json` handles an incoming JSON request from `%eyre`.
112example `++poke-json` handles an incoming JSON request from `%eyre`.
138−[`++peer`]()
114+### `++peer`
141Handles incoming subscriptions.
116Handles incoming subscriptions.
143−[`++pull`]()
118+### `++pull`
146Handles dropping subscribers.
120Handles dropping subscribers.
148−[`++pour`]()
122+### `++pour`
151Handles responses to `%pass` moves.
124Handles responses to `%pass` moves.
153−[`++park`]()
126+### `++park`
156Save state on update.
128Save state on update.
158−[`++prep`]()
130+### `++prep`
161Load state on update.
132Load state on update.