首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在clojure (或lisp)中何时使用感叹号?

在clojure (或lisp)中何时使用感叹号?
EN

Stack Overflow用户
提问于 2013-12-16 16:22:24
回答 1查看 6.9K关注 0票数 29

他们说在命名不纯函数时使用感叹号。

但我并不完全理解“不纯”函数。他们是不是

对象函数会更改其参数的状态(通过reset!、alter、java-

  • -methods等)
  • 函数会产生副作用(例如,print、spit等)
  • 或两者都有?

显然,官方的clojure apis并不是在上面的每种情况下都是正确的。我想知道我什么时候应该把它们放进去,并且需要你的帮助来让我的代码更健全。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-12-16 16:32:32

我想说的是,你不需要在每个不纯的函数上都放上!Community Clojure Style Guide建议:

在STM事务中不安全的函数/宏的名称应以感叹号结尾。

因此,基本上,以更改原子、元数据、变量、瞬变、代理和io的状态的!函数结束。

感谢@noisesmith的更新。

票数 32
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20606249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档