BlockchainCommons / BlockchainCommons/LifeHash

Document the underlying algorithm

Offen
#4 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Mathematica
Sterne
83
Forks
6
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Is there a document that specifies the algorithm behind LifeHash?

I know there are at least three reference implementations in various languages, listed below for completeness, however it requires a lot of effort to reverse engineer these:
* Swift -- ;
* C++ -- ;
* Python -- (probably the best source for reverse engineering as it's [one self-contained source file](https://github.com/BlockchainCommons/bc-lifehash-python/blob/master/lifehash/lifehash.py));

For example I was looking for a pure Rust based implementation but there is none. I might have tried to implement one in a weekend, but there is no specification to start from, and reverse engineering an already implementation is far from a weekend project. :)

Also, for completeness, the video linked in the repository does give some insight, but it doesn't contain all the actual details:

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne mit der eigenständigen Python-Referenz unter lifehash/lifehash.py und vergleiche sie anschließend mit den im Issue verlinkten Swift- und C++-Implementierungen. Dokumentiere den vollständigen Algorithmus einschließlich der Details, die im Video fehlen, damit ein anderer Entwickler LifeHash implementieren kann, ohne eine vorhandene Bibliothek per Reverse Engineering analysieren zu müssen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, python, rust, swift
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.