Skip to main content

Aiken

info

To get started with Aiken, see:

Aiken is a modern programming language and toolchain for developing smart contracts on the Cardano blockchain. It draws inspiration from various modern languages, like Gleam, Rust, and Elm, renowned for their friendly error messages and an overall excellent developer experience.

The language is exclusively used for creating on-chain validator scripts. Users will need to write their off-chain code for generating transactions in another language, such as Rust, Haskell, JavaScript, Python, etc.

As a language, Aiken is purely functional with static typing and type inference. This means most of the time, the compiler is smart enough to determine the type of something without requiring user annotation. It also allows the creation of custom types resembling records and enums. Aiken does not include higher-kinded types or type classes because it aims for simplicity.

On-chain scripts are typically small in size and scope compared to other kinds of applications being developed today. Consequently, they do not necessitate as many features as general-purpose languages that must tackle far more complex issues.

Aiken is easier than Plutus to get started with for those who are less familiar with functional languages like Haskell. Similar to Plutus, Aiken scripts are compiled down to the untyped Plutus Core (UPLC).