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