有一些框架的例子尝试将Java类名称解耦为Clojure符号(包括命名空间);这在报告异常时编写改进的、针对Clojure的特定调用堆栈很有用。
现有的库基于正则表达式匹配和猜测,有时可能会给出错误的结果,例如当命名空间或函数名称实际上包含下划线时。
如果Clojure能够在这些类上暴露一个静态最终字段,以显示应出现在调用堆栈中的正确名称,将有助于此类框架的作者;库然后能够使用反射来访问该字段的正确名称,而无需当前的猜测。
我建议将此类字段命名为CLOJURE_SOURCE_NAME。
除了函数之外的其他Clojure类构造,如具体化类型和协议实现,也将受益,尽管不清楚哪个确切字符串值可以正确且明确地识别该类的作用。