My understanding of a struct is that it has slots to store data in, has a type, has make-X
and slot-accessor functions, and can be specialized on by a method (since it has a type).
My understanding of a class is that it has all of the same and multiple inheritance. The top answer to this question states that structs can have single inheritance, and that initial implementations of CLOS were "much slower" than structs.
Based on how people talk about CLOS and structs, I assume there must be some other differences, but my trivial google searches have been fruitless. So I ask: what are the practical differences between CLOS and structs?