Scalactic EquaSets provide a convenient set implementation when you need to determine set membership via a function other than the .equals method. They enforce at compile time that two sets can be composed via intersect, union, or diff only if they have the same notion of equality. They allow you map and flatMap only through lazy intermediate objects. This talk will give you an overview of this API and walk you through the reasons behind its design choices.