A type for booleans values. See Primitive Types :: Bool for details.


  • True
  • False

A type for representing bytes. See Primitive Types :: ByteArray for details.

A type for opaque Plutus data. See Primitive Types :: Data for details.

A type for signed integers. See Primitive Types :: Int for details.

Note: there’s no floating numbers in Aiken.

A type for generic lists. See Primitive Types :: List for details.

A type for returning optional results. See also stdlib/option.


  • None
  • Some(a)

A type to compare values.

pub fn compare(left: Int, right: Int) -> Ordering {
  if left < right {
  } else if less > right {
  } else {


  • Less
  • Equal
  • Greater

A type for text strings. See Primitive Types :: String for details.

A type for nullary constructors. See Primitive Types :: Void for details.


always(a: a, b) -> a

A function that always return its first argument. Handy in folds and maps.

let always_14 = always(14, _)
always_14(42) == 14
always_14(1337) == 14
always_14(0) == 14

flip(f: fn(a, b) -> c) -> fn(b, a) -> c

A function that flips the arguments of a function.

pub fn titleize(left: String, right: String) {}

titleize("Hello", "World") // "Hello, World!"

flip(titleize)("Hello", "World") // "World, Hello!"

identity(a: a) -> a

A function that returns its argument. Handy as a default behavior sometimes.

not(self: Bool) -> Bool

Like !, but as a function. Handy for chaining using the pipe operator |> or to pass as a function.

Search Document