PRO: error flow and resource discipline

PRO.h is the control-flow spine of every ABC .c file: macros that thread an ok64 through the call chain so error handling and resource ownership stay separate. A function opens with sane, calls downward with call, and returns with done; a failure propagates by return with no scattered cleanup, because resources are acquired at the top of the chain and released only by their owner. Since the macros pollute the namespace, PRO.h is included by .c files only, never by a public header.

The flow macros

sane declares the hidden ok64 __ carrier and guards arguments. From there call and try invoke downward; the difference is whether a failure returns at once or is captured for inspection.

Error codes

Errors are ok64 values: uppercase names encoded in RON base-64, at most ten characters (sixty bits). The encoding makes a code both a small integer and a printable name.

Resource discipline

Because call can return from anywhere, a function cannot release in scattered if (failed) cleanup blocks. So whoever acquires releases — and acquisition sits at the top of the chain.