October 24, 2023. Montreux, Switzerland
ZkFold Symbolic is the programming language for writing zero-knowledge smart contracts. It is a high-level functional language, a subset of Haskell. Smart contracts written in zkFold Symbolic are compiled directly into arithmetic circuits that can be utilized by various zero-knowledge protocols.
Key language features:
- A subset of Haskell with full HLS support. The syntax is similar to PlutusTx. No ZKP knowledge is required.
- No ExUnit limits and no script length limits. Express your contract logic in a natural way. No need for hacky optimizations.
- For scalable dapps: a moderate network fee, even for a full 16 KB transaction, hundreds of inputs and outputs are possible.
- For applications with private data: the script, the redeemer, and the datum can be private, enabling simple implementation of apps with confidential information.
- For complex smart contracts: create computationally intensive smart contracts with ease. From on-chain voting to bridges to other chains.
- Free composability with other zkFold Symbolic contracts.
The first proper release of ZkFold Symbolic will consist of four components:
- The base language powered by our arithmetic circuit compiler,
- The standard Cardano smart contract library that includes all necessary types and functions for development on Cardano,
- The on-chain script for verifying zkFold Symbolic smart contracts on the Cardano blockchain,
- The utility code for producing zero-knowledge proofs for zkFold Symbolic smart contracts.