>>> what does marshalling means ?
>> a google search for
>> data.marshalling
>> came up with this nice definition as its first
>> ranked hit:
>> http://www.webopedia.com/TERM/D/data_marshalling.html
>> which covers the subject nicely in a few lines,
>> not only telling you _what_ data marshalling is,
>> but also _why_ it is necessary.
> "_why_ it is necessary"
> but then how were people doing that when that
> buzzword didn't exist?
Not having a word for "rock" doesn't prevent monkeys
from pounding one rock upon another. Actions aren't
limited by vocabulary.
> You know, like if computing existed before that
> Microsoftism from the DCOM era appeared (*).
> Seriously though, that page gives one reasonable
> definition of marshalling but it doesn't say that
> the term *is* misused.
There's no reason, in a definition, to list all the
misuses.
> Does it imply validation as another poster said?
Not necessarily.
> Does it imply going over the wire?
No. It is sufficient for marshaling to be necessary,
that the data travel from a program/routine compiled
in one language, to one compiled in another, since
the binary formats for the same block of data are
only rarely identical between languages. This is a
well known problem with C structures. Marshaling is
useful over-the-wire because computer hardwares
don't agree on which end of a "longer than a byte"
data entity comes first, much less on internal
formats.
> I'd think "yes", as does the definition you gave.
> But there are many people (blogs, articles, Usenet
> postings) who definitely use the term for data
> that does never leave the computer it was
> "marshalled" on.
> Is it related to XML or not?
XML is used for data marshaling, in particular it is
often used that way in Java, but data marshaling
need not involve XML, there are other ways to
accomplish the same thing. The big, big advantages
of XML are 1) it is standardized, 2) it is
self-describing, and 3) it has several standardized
validation mechanisms.
> Is it related to XML in the Java world or not?
As above. I'd certainly _recommend_ XML if a data
marshaling task is at hand, but I can't pretend
there aren't other ways to do it, Java or not.
> who coined the term?
It is a natural outgrowth of other uses of
marshaling, so only the usage, not the term, was a
computer person's "invention", and the usage is so
natural the "inventor" probably didn't notice the
act.
> is it trademarked?
Probably, but probably not in that usage. Most of
English has ended up trademarked, somehow.
> if the answer is "nobody knows" and "no" to these
> two questions, then it's not going to help to have
> a precise definition (as opposed to, say, "Design
> by Contract" which has been coined and trademarked
> by Meyer, this helps to narrow the definition [I
> like this example]).
There's not much use for _a_ precise definition
anyway, since the term has meanings outside
computing, and can be infinitely re-mapped from
those outside meanings to new places that computing
needs such a term.
> Note that even when terms have very precise
> meaning (eg "inner" or "nested" in Java, as
[quoted text clipped - 4 lines]
> find many people correctly using the term (which
> helps spread misconceptions).
Umm, if it cannot be narrowly defined, and it
cannot, then you're hard pressed to call _any_ usage
"incorrect", such usages are merely "extensions".
> Based on these facts, I tend to avoid the term as
> much as possible in documentation/talks/whatever.
I wouldn't do that. The main meaning, of arranging
data into a new, possibly standard, format robust
enough to survive a transition across any interface
where the original format is incompatible between
the sides of the interface, is clear enough.
> There's usually always a less ambiguous way to
> explain what's going on (I'd rather write a few
> more words than have people not understanding or
> misunderstanding what I'm writing).
> As an example, the OP asked:
> OP: "....:Is is possible for an EJB client to marshal an object
> OP: of class java.lang.Class to an EJB?"
> OP: what does "marshalling" means in the above question?
> What has gone wrong for such a question to appear?
There is nothing wrong for such a question to
appear, the OP is simply asking for clarification of
an unfamiliar term.
> To me there's more to it than simply saying
> "here's a definition, computing wouldn't exist
> without it"... (slightly exagerating ;)
"Here's a term, here are its historical roots, here
are the ways it is commonly used in computing
today" seems to suffice, though.
> (*) I was already programming since many years
> when I first encoutered the term (actually I
[quoted text clipped - 3 lines]
> term, but I was wrong as another poster pointed
> out).
I'd be floored if MicroSoft, the essense of adopting
the work of others, _invented_ the term. It does,
after all, extend back to the marshal of a parade,
who in the act of marshaling lines up the
participants in a specific arrangement, so it
predates computing, much less MicroSoft.
The 1913 online Merriam Webster's unabbridged
dictionary has this as its first definition of the
verb "to marshal".
"To dispose in order; to arrange in a suitable
manner; as, to marshal troops or an army."
http://machaut.uchicago.edu/cgi-bin/WEBSTER.sh?WORD=marshal
> (**) I wrote "(un)marshal(l)ing" for the spelling
> with a single "l" is quite often seen ("english
> english" vs "amercian spelling" ?)
I'm not sure who owns which, though "traveller" is
the British spelling and "traveler" the American
spelling, so maybe the doubled consonant is the
British choice. The 1913 Websters has both
spellings "marshaling" and "marshalling".
HTH
xanthian.
Dag Sunde - 24 May 2006 12:03 GMT
"Kent Paul Dolan" <xanthian@well.com> skrev i melding
<snipped />
> The 1913 online Merriam Webster's unabbridged
> dictionary has this as its first definition of the
[quoted text clipped - 4 lines]
>
> http://machaut.uchicago.edu/cgi-bin/WEBSTER.sh?WORD=marshal
Which means that The 1913 online Merriam Webster's can be used
today within the context of programming/software development:
"To arrange (data) in a suitable manner (so the recipent can
understand them)."
:-D

Signature
Dag.
Kent Paul Dolan - 24 May 2006 12:11 GMT
> "Kent Paul Dolan" <xanthian@well.com> skrev i melding
>> The 1913 online Merriam Webster's unabbridged
>> dictionary has this as its first definition of the
>> verb "to marshal".
>> "To dispose in order; to arrange in a suitable
>> manner; as, to marshal troops or an army."
> > http://machaut.uchicago.edu/cgi-bin/WEBSTER.sh?WORD=marshal
> Which means that The 1913 online Merriam Webster's can be used
> today within the context of programming/software development:
> "To arrange (data) in a suitable manner (so the recipent can
> understand them)."
Precisely so, which does rather remove the necessity to look for
some one original user of "marsheling" in a "computer data
re-arranging" sense.
HTH
xanthian.