Trending topics
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
HAL vs Graph can be viewed more generally as:
When modeling “computation,” do we use
- Shallow Embedding (write it directly in the host language), or
- Deep Embedding (encode it as a data structure)? 🧵
From shallow → deep, there are several design points:
1. Direct implementation in Rust / C++
2. Embedded DSL inside the host language
3. A brand-new specialized language
Each step trades convenience for structure and analyzability.
In ZK, it’s not enough to run a computation — we must also translate it into constraints.
So most proving systems already lean toward (2) or (3):
- Circom, PIL/PIL2 → custom constraint languages + compilers
- Plonky2 → each gate defines multiple semantic functions
Plonky3 goes further with the AirBuilder trait: the same code can evaluate witnesses, compute verifier residuals, and dump constraint polynomials.
Many zkVMs (SP1, Hypercube, OpenVM) adopt Plonky3; Zisk is based on PIL2.
This shows a clear trend toward deep, graph-like representations of computation.
1.79K
Top
Ranking
Favorites
