我怀疑差异的根本原因可能涉及到操作系统、JDK版本、REPL是否在VSCode with Calva、Emacs with CIDER等IDE内部运行,或者是在终端中运行,甚至可能是用于确定字符集的用于JVM的环境变量设置,如macOS和Linux上的LC、LANG、TERM等。
至少对于macOS 10.14.6内置的Terminal、AdoptOpenJDK 15.0.1和一个在该Terminal中使用clojure
版本1.10.1.763和以下环境变量值启动的REPL,我得到了期望的结果
$ env | egrep '(LC|LANG|TERM)' TERM_PROGRAM=Apple_Terminal TERM=xterm-256color TERM_PROGRAM_VERSION=421.2 TERM_SESSION_ID=51C20403-498A-4E4E-ABFE-B59367276B5D LANG=en_US.UTF-8