I add a boilerplate to each function definition that declares constraints on inputs, expectations of outputs, performance issues, etc. I use this to add invariants to the code to detect/enforce these conditions.
But, there is nothing that ensures that I've done this -- other than discipline.
I'm looking at ways to create an IDL that will allow for more specific criteria to be included in the declaration that could also drive the IDL compiler to add suitable invariants as applicable.
[This makes RPC much more effective but can also benefit traditional ftn invocations]Any pointers to similar schemes? I've been looking through CORBA et al. for hints but they seem to focus on bigger machines (where there is more tolerance over data types and more overhead expected).