The second data structure is an array of structure .. the third set of structure are a series of "bit" lists ... Each array element  has an offset for its  corresponding "bit list":

[{........, offset: Int64}] [[bit]]

when I marshall up all this "offset" should be the serialized/"marshalled" offset of its correponding [bit]!!

Regards, Vasili


On Thu, Jan 1, 2009 at 10:51 PM, Antoine Latter <aslatter@gmail.com> wrote:
2009/1/1 Galchin, Vasili <vigalchin@gmail.com>:
>
>     Say I have several data structures that are marshalled(using Binary
> class) and written out linearly on persistence store. I want to calculate
> the offsets in bytes of these various data structures in a functional
> language way. What is the "suggested" (elegant) way .... ?
>

It doesn't look like the 'Put' monad in te binary package keeps track
of position in the output stream.

Is there a bigger-picture goal you're trying to achieve?  Maybe we
could suggest a better approach by stepping back a bit.

-Antoine