-- action: run -- outcome: success -- expect: false syntax 'lazy y { Thunk { () -> y } } syntax 'evaluate y { Thunk x = y x () } syntax 'if cond then 'else otherwise { branch = magic "if" (cond, lazy then, lazy otherwise) evaluate branch } syntax a 'equals b { magic "equal" (a, b) } not = n -> if n { false } else { true } even = n -> if (n equals 0.0) { true } else { odd (n - 1.0) } odd = n -> if (n equals 0.0) { false } else { even (n - 1.0) } println even 35.0