有几个框架示例尝试将Java类名称反混淆为Clojure符号(包括命名空间);这在报告异常时写入改进的、特定于Clojure的堆栈跟踪很有用。
现有库基于正则表达式匹配和猜测,偶尔会给出错误的结果,比如当命名空间或函数名称实际上包含下划线时。
如果Clojure在这样的类上公开一个包含应在堆栈跟踪中出现的正确名称的静态final字段,将有助于此类框架的作者;库 then 可以使用反射来访问该字段的正确名称,无需当前猜测。
我建议将CLOJURE_SOURCE_NAME作为此类字段的合理名称。
除了函数之外,其他Clojure类结构(如具象类型和协议实现)也将受益,尽管确定确切字符串值以明确且无歧义地标识类的作用可能不太明显。