>>14
Those are implementations of Common Lisp, but you could also consider the dialects of Common Lisp, if you choose to use their extensions directly. Usually I tend to write a compatibility layer allowing me to use more than one, but when I'm in a hurry and just care about getting things done, I sometimes just use the implementation-specific symbols directly and leave this to be abstracted and made portable later. I suppose one could say that each implementation is a dialect on its own extending from the original standard(s)/specification(s), usually implementing extensions such as the MOP, Gray Streams, Environments and others, which tend to have specifications of their own, and then you have true implementation-specific extensions which you don't find in other implementations, altough I think it's rare to not be able to easily port such extensions to other implementations, unless they depend heavily on the implementations internals (and even then it may be ported with enough effort).