title: Typeclasses in Common Lisp
body: <p>I'm wondering if there's a way to emulate Haskell's <code>typeclasses</code> in Common Lisp. </p>
  
  <p>Generic functions allow <code>overloading</code>, and it's possible to define types using <code>deftype</code>(which could be defined by membership to some list of instances, for example).  </p>
  
  <p>But I can't <code>dispatch</code> on a type. Is there a way to make a class a subclass(and a subtype) of some other class after its definition(e.g. making the <code>cons</code> class a subclass of a <code>sequence</code> class, without redefining <code>cons</code>)?</p>
  
  <p>Thanks.</p>