CL-UNICODE provides Common Lisp implementations with knowledge about Unicode characters including their name, their general category, the scripts and blocks they belong to, their numerical value, and several other properties. It also provides the ability to replace the standard syntax for reading Lisp characters with one that is Unicode-aware and is used to enhance CL-PPCRE with Unicode properties.

While Babel and flexi-streams provide character encodings (to convert strings to bytes), cl-unicode provides various Unicode features like access to character names and character class names. It was written by Edi Weitz and can be found at