Our next obscure function is stream-external-format. This is entirely an implementation-dependent function. Some implementations may have different on-disc formats for data, and using a different external format may result in different bytes being delivered to the disc. All return values from this function have implementation-dependent meanings, so the programmer must be aware of this fact when writing code intended to be portable.
To provide a specific example, SBCL allows the user to open a character stream for writing with any of several external formats. For instance, one can write in UTF-8, UTF-16BE, UTF-32LE, ISO-8859-5, EBCDIC-US, to name just a few. Each of these has a different external format keyword, which stream-external-format will return.