Patty is a library that facilitates working with functional data structures on top of CLOS. It consists of a few macros and metaclasses that integrate nicely with CLOS. Code using patty is similar in style to Haskell code using algebraic data types, primitive pattern matching and type classes.