Are you seriously asking me if a programming language allows for the implementation of data-structures?
If you mean can users extend the core CL data-types, no, but you have a wealth of tools to do that yourself; use generic functions to implement whatever interface you wish, then provide for specific implementations.