Home

IELE

IELE is a virtual machine and intermediate language developed by IOHK for Cardano. It was introduced to provide a safe, portable, and verifiable execution environment for smart contracts and blockchain applications, with support for multiple front-end languages.

Architecture and semantics: IELE uses a register-based instruction set and a formal operational semantics, designed to

Compiler and languages: The IELE toolchain provides compilers that translate languages such as Java-like or other

Role in Cardano: During the early development of Cardano's Goguen era, IELE was proposed as part of

Status and reception: While IELE contributed to the research discourse around safe smart contract execution, Cardano's

be
amenable
to
formal
verification
and
reasoning
about
correctness.
It
aims
to
serve
as
an
intermediate
representation
that
can
compile
from
high-level
languages
and
target
multiple
backends.
languages
to
IELE
bytecode,
enabling
cross-language
development.
It
emphasizes
deterministic
execution
and
sandboxing
to
prevent
contract
bugs.
Cardano's
multi-language
contract
strategy,
alongside
languages
like
Plutus
and
Marlowe;
IELE's
goals
included
cross-language
interoperability
and
formal
verification.
mainnet
smart
contracts
have
since
been
deployed
primarily
using
Plutus
(Haskell-based)
and
Marlowe;
IELE
remains
an
experimental
or
historical
element
in
the
Cardano
ecosystem.