Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document go-hamt-ipld CHAMP implementation #1268

Closed
whyrusleeping opened this issue Nov 2, 2018 · 1 comment
Closed

Document go-hamt-ipld CHAMP implementation #1268

whyrusleeping opened this issue Nov 2, 2018 · 1 comment
Labels
C-docs Category: Documentation P1 High - we should be working on this now or in the immediate future

Comments

@whyrusleeping
Copy link
Member

Description

We should document the details of the HAMT/CHAMP implementation we are using so that others can implement a compatible library in other languages (and even use it for other projects too).

This should likely be its own document, for now it can go in go-hamt-ipld as a file called spec.md.

I'm not yet sure how the structure of the document should look, but if you take this up, feel free to write it up as you see fit, and we can reorganize later.

Acceptance criteria

Someone should be able to, without looking at any go code, implement a fully compatible HAMT library from the spec document.

Risks + pitfalls

Where to begin

https://github.com/ipfs/go-hamt-ipld

Note: I can likely pick this one up if nobody else wants to, but I would very much appreciate a second set of eyes on the algorithms and datastructures. Having me write the canonical code and spec feels like a good way to bake in bad assumptions.

@whyrusleeping whyrusleeping added the P1 High - we should be working on this now or in the immediate future label Nov 2, 2018
@whyrusleeping
Copy link
Member Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-docs Category: Documentation P1 High - we should be working on this now or in the immediate future
Projects
None yet
Development

No branches or pull requests

3 participants