2024年Clojure状态调查!上分享您的想法。

欢迎!请参阅关于页面以获取更多有关如何使用此信息的信息。

0
Clojure

基于 https://dev.clojure.org/display/design/Promises

Slack上的讨论

增强future/promise,使其能够在完成/失败时调用一个函数(如果我有这个功能,我会更频繁地使用承诺,但你可以使用未来以及/或额外的函数/宏以一种非常糟糕的方式解决这个问题)。

2 个答案

+1
参考资料:https://clojure.atlassian.net/browse/CLJ-2487(由seancorfield报告)
0

设计文档已迁移至https://archive.clojure.org/design-wiki/display/design/Promises.html,它早于java.util.concurrent.CompletableFuture,它提供了所有这些功能(以及更多)。

在与Ghadi讨论后,我决定只写几个宏,为所需的简单操作提供语法糖。它们可以在https://github.com/worldsingles/commons找到

(-> (completable (do-some-stuff))
    (then some-function)
    (exceptionally an-exception-handler)
    (deref))
...