#lang plait
(define-type Animal
[Snake (name : Symbol) (weight : Number) (food : Symbol)]
[Tiger (name : Symbol) (weight : Number)])
(define (animal-name a)
(type-case Animal a
[(Snake n w f) n]
[(Tiger n sc) n]))
(animal-name (Snake 'Slimey 10 'rats))
(animal-name (Tiger 'Tony 12)) ; => 'Tony