Amit,

I created our GADDAG format back in 2005, but Matt Liberty made some changes
a few months ago. His code is much clearer than mine was, and it is a great
improvement, but the format is not documented. Honestly I haven't looked at
it much because I haven't had a need to. So thank you for your description
of the format which might be of use to other tinkerers (who we hugely
encourage). I am curious as to what your little program does, and if you'd
like to send it to me, I could try to get it to work.

John

On 3/15/07, Amit Chakrabarti <[EMAIL PROTECTED]> wrote:

  OK, my mistake. I had written:

> AFAICT, looking in the declarations in "gaddag.h", and hex dumping the
> file "twl06.gaddag", the deal seems to be:
> 1. The file is a string of "nodes", each of which is a 4-byte sequence.
> 2. Each node has the following structure:
> 2.1. Three most significant bytes: offset to first child node, in
> 4-byte units: i.e., if these three bytes together have the vaule
> "2017", then the first child is 2017 nodes after this one.
> 2.2. Least significant byte:
> 2.2.1. Bit 7: not used
> 2.2.2. Bit 6: if set, next node is right sibling of this one

The above line should be:

2.2.2. Bit 6: if clear, next node is right sibling of this one

> 2.2.3. Bit 5: if set, this node is terminal
> 2.2.4. Bits 4,3,2,1,0: letter at this node (0 = A, 1 = B, etc.)

The rest is okay.

Quackle team: if you want to put some version of the above text into the
documentation, feel free.

-AC


Reply via email to