Universal Binary Format

A programming language for transporting and describing complex data structures across a network (aka marshalling).
It has three components:

While the XML series of languages had the goal of having a human readable format the UBF languages take the opposite view and provide a "machine friendly" format.

UBF is designed to be easy to implement. As a proof of concept - UBF drivers for Erlang, Oz, Java and TCL can be found in the download area. [..]

UBF is designed to be "language neutral" - UBF(A) defines a language neutral binary format for transporting data across a network. UBF(B) is a type system for describing client/server interactions which use UBF(A).

Programming by Contract

Central to UBF is the idea of a "contract" which regulates the set of legal conversations that can take place between a client and a server.

A software component (the contract checker) is place between a client and server which checks that all interactions between thew client and server are legal.

[..]