(= zero-t (data)) (= succ-t (data prev)) (= zero (zero-c)) (= one (succ-c zero)) (= two (succ-c one)) (= three (succ-c two)) (= four (succ-c three)) ;; method (= (succ-t.inc self) (succ-c self)) (assert (eq (succ-t.inc one) two)) (assert (eq (succ-t.inc two) three)) ;; associated function (= (null-t.cons x) (cons x null)) (assert (eq (null-t.cons null) (cons null null)))