what's Weiroll?
Weiroll is a simple and efficient operation-chaining/scripting language for the Ethereum Virtual Machine (EVM). It processes an array of bytes32-encoded commands sequentially on an array of up to 127 state variables (bytes of arbitrary length). Each command specifies smart contract function calls via mechanisms like delegatecall, with inputs ABI-encoded from state elements and outputs decoded back into state. There is no built-in branching or looping; these must be implemented externally. This design enables compact, gas-efficient execution of multi-step DeFi interactions in a single transaction, such as token approvals, swaps, deposits, and harvests. Integrated into protocols like MakinaFi for vault automation and Enso for bundling operations, Weiroll powers programmable strategies, yield optimization, and complex on-chain workflows while maintaining the caller's execution context.
Featured in a session at EthereumDenver conference presented by Colin Platt from Makina, focusing on Weiroll as a primitive for DeFi interactions including vault building and maintenance.