[e-lang] [RFP] cross-language object serialization (E <---> Squeak-E)

Tyler Close tyler at waterken.com
Sat Jan 18 21:06:48 UTC 2003

On Saturday 18 January 2003 16:30, Robert Withers wrote:
> [I am cross-posting to both lists]
> Last night, I successfully established a negotiated connection between
> an E Vat and a Squeak-E Vat.

Congratulations! I believe interoperation will be the key to
deploying capabilities.

> I don't have a link to WOMP, unfortunately.

WOMP is the complete object messaging protocol. What you're
interested in is just the object serialization used in WOMP,
dubbed WOS. The WOS is a separate specification at:


> While I like WOMP, and I am sure that many squeakers on the XML side of
> things would too, for my purposes I would like a binary format.  It is
> only for machine consumption, so readability isn't a criteria.

WOMP's object serialization is defined at an "infoset" layer.
There is an XML representation of this infoset as well as a fast
compact binary serialization. See the doc-code format at:


Having both a human readable and a machine friendly representation
of your serialization let's you have your cake and eat it too.
MarkM has previously stated that this sort of duality is a
requirement for him.

> Here are some serialization criteria that I have in mind, some of which
> are implementation requirements, while others are feature requirements.
>   This is just a stab in the dark, so if you have any ideas that would
> help make this more solid, let us hear it.
> 1. it should be a binary representation for performance and scalability
> reasons

This is the main design criteria for the doc-code format.

> 2. it does not have to be human readable

You get this for free by having a well-defined translation to XML.

> 3. it should be easy to define new encodings

New object types are added at the infoset layer. An infinite
number of new types can be defined.

> 4. it should be easy to register mappings for new types

The typing mechanism uses a URI to identify a type. By using file
URIs you can leverage the existing DNS for collision free type

> 5. it should be a standard, if possible

The XML representation of the serialization is in standard XML

The WOS lists some other design goals that you should find
important. I believe the support of type upgrade in WOS is
important and novel.


More information about the Squeak-dev mailing list