This post was published 49 days ago. The infomation described in this article may have changed.
Triton VM v0.35.0 is now live. The main highlights are:
Up until now, the only way to initialize the Sponge for hashing input of variable length was to use instruction
absorb_init. As the name suggests, this instruction not only initializes the Sponge’s state, it also absorbs the stack’s top ten elements. As of this version, this behavior is completely de-coupled: new instruction
sponge_init initializes the Sponge state, (existing but renamed) instruction
sponge_absorb does the absorbing.
This has immediate runtime effects for the programs that are necessary for Neptune, speeding up variable length hashing by around 16%.
As the logic of the programs written for Triton VM grows more complex, debugging options become more important. As of this version, the parser understands the
break command. Normal program execution is not affected. While this debugging information is not used yet, the added support makes building a full fledged debugger a lot easier.
Note: (!) indicates a breaking change.
swapto 0 (bcf61ee6)
Programand its new methods (5ff137dc)
impl Display for InstructionToken(1550f8de)