packages feed

Agda-2.3.2.2: test/succeed/OverloadedConstructors.agda

module OverloadedConstructors where

data Nat : Set where
  zero : Nat
  suc : Nat -> Nat

data Fin : Nat -> Set where
  zero : {n : Nat} -> Fin (suc n)
  suc  : {n : Nat} -> Fin n -> Fin (suc n)

three : Nat
three = suc (suc (suc zero))

ftwo : Fin three
ftwo = suc (suc zero)

inc : Nat -> Nat
inc = suc

{-
{-# BUILTIN NATURAL Nat #-}
{-# BUILTIN ZERO zero #-}
{-# BUILTIN SUC suc #-}
-}