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-base-string.
for simple-text-string.
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 cl:schar
.
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 - 20 Sep 2017