Why is the concept of Marshalling called as such?

A footnote in the docs for the python marshal module says the following:

The name of this module stems from a bit of terminology used by the designers of Modula-3 (amongst others), who use the term ``marshalling'' for shipping of data around in a self-contained form.


It's more like the "grand marshal" of a parade or the "marshalling grounds" for a parade. That makes sure that everything goes out in the right order even if they don't arrive in the right order. Thinking of my strings as chimpanzees in little cars makes interop a little more fun for me :-)


A marshal is a something/someone who controls flow or probably more precisely - controls structure (see comments below). For example at a racing event you get track marshalls. (I know that's real world and sport and so may not be appeal to many here).

If data being transferred across a boundary then I think controlling that flow is very aptly described as marshalling. I think your idea of marshalling is another good example of this term used correctly. I do think that using an existing term should be de rigueur as opposed to creating new jargon.

Tags:

Marshalling