【问题标题】:What are alternatives to JVM exceptions for reporting and handling errors in clojure code?在 clojure 代码中报告和处理错误的 JVM 异常有哪些替代方法?
【发布时间】:2010-12-23 21:01:28
【问题描述】:

背景

The Joy of Clojure 一书解释了 JVM 异常如何成为一个封闭系统,并建议在 clojure 中报告和处理错误可能有更好的替代方案。根据我的经验,通用 lisp 条件系统似乎很理想,但是,我并没有限制对这种范式的回答。根据我的研究,有条件(Gilardi)http://clojure.github.com/clojure-contrib/condition-api.html、error-kit(Chouser)http://richhickey.github.com/clojure-contrib/error-kit-api.html 和处理程序(Weiss)https://gist.github.com/745223,但是在这些实现中似乎没有明显的赢家,我感觉有关主题的更多信息会很有用。

如何在项目中成功使用现有替代方案?我正在寻找可以效仿的示例。

这些替代系统如何克服 JVM 异常系统的限制?

未来的方向是什么,或者即将出现的实验性替代方案是什么?它们意味着什么?

【问题讨论】:

标签: exception-handling error-handling clojure reporting conditional-statements


【解决方案1】:

仅供参考,这正在 clojure-dev 中进行讨论。想法收集here和线程here

【讨论】:

  • 谢谢,完成后我会尝试综合讨论结果。
【解决方案2】:

问这个问题已经很多年了,但我认为这个话题仍然是相关的。我一直在研究Promenade(参见documentation),它可以将错误表达为数据并提供优雅的错误处理和控制流。还有其他项目(在 Promenade README 中提到)试图解决同样的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 2017-05-19
    • 1970-01-01
    • 2011-08-08
    相关资源
    最近更新 更多