Paul Brook wrote:
Why can't we make the monitor interface a "formal" interface?
Because then fixing a type or extending the interface becomes a pain.
It's also much more difficult to specify a text-base interface
completey, compared to a C api (where sometimes all you need is the
header and a few comments).
I disagree.
It's entirely possible to fully specify a text protocol,
Of course it's possible; it has been done many times. I've printed out
several pounds of http myself. It isn't easy, especially starting from
something intended for human consumption.
and it's just as easy
to extend it in a backwards compatible way.
It's hard to correct a typo in a backwards compatible way. I think it's
best to separate the human readable protocol from the machine readable
protocol.
A C API is about the most fixed
interface you could possible use.
But it's easy to add things without breaking it.
A C API also requires that both sides of
the interface be part of the same process on the same machine.
My plan was for the library to connect to the managing process using a
protocol of its choice. But I'm withdrawing it in favor of Dan
Berrange's idea of having a client library.
If you prefer a dedicated machine readable protocol, then I think that's
workable too. But it has to be decoupled from the human readable
monitor protocol.
--
error compiling committee.c: too many arguments to function