expect / require / ensure

Checks stay active without JVM assertion flags.

Example.kalm kalm
pub fun square(value: Int) -> Int:
    require value >= 0, "nonnegative input"
    fix result = value * value
    ensure result >= 0, "nonnegative result"
    expect result == value * value
    return result

Learn more.