I've been working on a specification for Bitcoin consensus rules: it's a declarative-style, executable, modern C++ implementation with the beginnings of a purpose-built DSL to enable formal verification.
It's not finished, but it's working to sync headers and blocks to tip (with full script validation to follow).
Here's my write-up:
Hornet Node and the Hornet DSL:
A Minimal, Executable Specification for Bitcoin ConsensusToby Sharp
I don't read this list often, but if you'd like to discuss, you can reach me directly at
to...@hornetnode.org. I'll make the code available when it's ready.
Thanks,
T#