module Associativity where

data ℕ : Set where
  zero : ℕ
  suc  : ℕ → ℕ

infixr 20 _↪_

data List : Set where
  ∅ : List
  _↪_ : ℕ → List → List

zeros : List
zeros = zero ↪ zero ↪ zero ↪ ∅

infixl 30 _++_

_++_ : List → List → List
∅ ++ l₁ = l₁
(x ↪ l) ++ l₁ = x ↪ l ++ l₁