open import Agda.Builtin.Bool using (Bool; true; false)

tt = true

not : Bool  Bool
not true  = false
not false = true

_∧_ : Bool  Bool  Bool
_∧_ = λ where
  true true  true
  _    _     false

testBool : Bool
testBool = true  false

open import Agda.Builtin.Nat using (Nat)

bool2Nat : Bool  Nat
bool2Nat = λ where
  true   0
  false  42

if_then_else_ :  {A : Set}  Bool  A  A  A
if true  then t else _ = t
if false then _ else f = f

testIte : Nat
testIte = if true then 42 else 0

open import Agda.Builtin.Nat

test : Nat
test = bool2Nat testBool
     + testIte
{-# COMPILE AGDA2LAMBOX test #-}
Debug λ☐ Rocq
  ↪  
WASM C OCaml CakeML Rust Elm
  ↪  
  ↪