Transpiling Solidity to Cairo contracts
Warp is Starknet's approach to EVM compatibility. It allows developers to take their Solidity smart contracts and transpile them to Cairo, Starknet’s smart contract language.
Warp your way to Starknet
Ethereum’s long-term solution to scalability is to become a settlement and verification layer for transactions that happen on layer 2 chains (L2s). Offloading the execution of transactions reduces the load on Ethereum, and ZK-rollups are arguably the most capable L2s. Starknet possesses a counter-intuitive property: transactions get cheaper the more the network is used. This is because transaction costs are amortized over all the transactions in a batch. Due to the properties of STARKS, the more transactions we have in a batch, the cheaper it gets to verify them on Ethereum on a per transaction basis.
Cairo - a purpose-built programming language
Starknet is a decentralized, permissionless, STARK-powered, L2 ZK-Rollup that supports general computation, making it one of the most promising solutions for scaling Ethereum. It supports smart contracts written in Cairo which uses a fundamentally different programming model to Solidity, meaning that Solidity can't be used for Starknet development without Warp.
The Solidity ecosystem is thriving. Years of development have resulted in powerful tooling for developers and many experts in the field. Given how novel the Starknet technology is, its tooling and expertise are not as developed. Warp makes it effortless to take all the benefits from that mature ecosystem to Starknet. It’s the missing piece to onboard developers, which will allow the ecosystem to bloom.
The Nubia team is developing Warp at Nethermind, born out of a rough prototype by the Starknet team. In the short time since its inception, the project has accomplished many achievements, supporting most of Solidity’s constructs. Developers can already use the tool to transpile their Solidity smart contracts and deploy them on Starknet in seconds.