The function string-append
takes any number of string designators and constructs a single string from them.
Each of the elements of the strings argument is first coerced into a string using the string
function if it is not already a string.
string is a string of the "widest" type amongst strings. That is, the constructed string is of the same type as the argument with the largest element type.
(readtable-case *readtable*)
=>
:UPCASE
(string-append "foo" 'bar)
=>
"fooBAR"
(type-of
(string-append
(coerce "A" 'simple-base-string)
(coerce "A" 'simple-text-string)
))
=>
SIMPLE-TEXT-STRING
LispWorks User Guide and Reference Manual - 13 Feb 2015