You can use the transaction queue feature for more convenient
communication with subprocesses using transactions.
Call tq-create
to create a transaction queue communicating with a
specified process. Then you can call tq-enqueue
to send a
transaction. tq-enqueue
takes these five arguments:
(tq-enqueue tq question regexp closure fn)
tq is the queue to use. (Specifying the queue has the effect of
specifying the process to talk to.) The argument question is the
outgoing message which starts the transaction. The argument fn is
the function to call when the corresponding answer comes back; it is
called with two arguments: closure, and the answer received.
The argument regexp is a regular expression to match the entire
answer; that's how tq-enqueue
tells where the answer ends.
Call tq-close
to shut down a transaction queue and terminate its
subprocess.