schar works on any simple string object. However, for efficient string access when a simple string type is known, the following specialized accessors are provided:
For simple-bmp-string there is no explicit accessor, but you can get the optimized access by declaring it as simple-bmp-string, and do the access using
You can also use declarations to optimize the access to simple-base-string and simple-text-string. In the case of simple-base-string, that means using only Common Lisp symbols, so it is fully portable.
LispWorks User Guide and Reference Manual - 13 Feb 2015