Loading comparison...
Loading comparison...
An OCaml-inspired smart contract language for the Tezos blockchain. Part of the LIGO language family.
CameLIGO is a smart contract programming language for the Tezos blockchain, part of the LIGO language family developed by Marigold and the LIGO project team. Drawing its syntax from OCaml, CameLIGO provides a strongly-typed, functional programming approach to writing smart contracts with pattern matching, algebraic data types, and type inference. The LIGO project, initiated around 2019, aimed to provide multiple syntactic flavors for Tezos development — CameLIGO (OCaml-style), JsLIGO (TypeScript-style), and the original PascaLIGO (Pascal-style, now deprecated). CameLIGO has become the most popular of these flavors within the Tezos ecosystem.
Tezos is a self-amending proof-of-stake blockchain known for on-chain governance, formal verification capabilities, and energy efficiency. CameLIGO contracts compile to Michelson, Tezos's low-level stack-based virtual machine language, through the LIGO compiler. The language is used to build decentralized finance (DeFi) protocols, NFT marketplaces, DAOs, and token contracts following the FA2 (TZIP-12) standard on Tezos. The development ecosystem includes the LIGO Web IDE for browser-based development, a CLI compiler, testing frameworks for unit and integration testing, and deployment tools.
CameLIGO's type system helps prevent common smart contract vulnerabilities like integer overflow, reentrancy, and unauthorized access at compile time. The functional programming paradigm aligns well with smart contract development, where immutability and predictable state transitions are paramount for financial security.
CameLIGO smart contracts handle financial assets on the Tezos blockchain and are immutable once deployed, making pre-deployment diffs critically important. Changes to entrypoint signatures, storage types, or access control logic can introduce vulnerabilities exploitable by attackers.
Comparing CameLIGO files catches unintended permission changes, token transfer logic modifications, and storage migration issues that could result in locked or stolen funds on the blockchain.
UtraDiff compares CameLIGO smart contract files using CameLIGO syntax highlighting, rendering type definitions, entrypoints, and storage declarations in distinct colors. Side-by-side view aligns function definitions and pattern match branches across panels. The whitespace toggle handles varying indentation conventions.
Alt+Arrow navigation jumps between changed functions. Language-aware tokenization distinguishes entrypoint signature changes from internal logic modifications, critical for auditing Tezos contract upgrades.
Supported extensions: .mligo