在Clojure中,Clojure核心中最重要的其他功能是什么,必须掌握才能提高效率?

use*_*116 11 functional-programming clojure

除了映射,过滤,减少clojure核心中的众多其他函数之外,哪些是我必须学会提高效率的下一组最有用/最常用的函数?

dby*_*rne 8

如果你去4clojure问题页面并搜索"核心功能",你会发现4clojure团队认为有用的一堆.仅举几例:

  • 通过...分组
  • 不同
  • 减少
  • 频率
  • 划分
  • 合并
  • 交错
  • 干预

  • 更好的是,继续[4clojure问题](http://www.4clojure.com/problems),关注一些[高级用户](http://www.4clojure.com/users),然后当你解决问题时,你可以看到他们用来更简洁地解决问题的其他功能(如果有的话).这样你不仅可以看到哪些函数有用,而且_when_和_how_它们很有用. (3认同)

Art*_*ldt 5

序列处理库对我来说很多是Clojure Clojurish.这个想法是在单个数据类型上许多函数,而不是在几种类型上有几个函数.所以我会说学习所有序列操作功能可以带来巨大的好处.

PS:一个特殊的喊出来的for,reductionsiterate


Kev*_*vin 5

备忘单很有用:http://clojure.org/cheatsheet,阅读时间不长.


oct*_*bus 4

您的映射、过滤器和归约列表涵盖了一些重要内容,因此添加到该列表可能会重复您已经知道的内容。

Clojure 的优势之一是同步。我将开始编写示例代码来学习如何使用这些同步结构、引用、代理和原子。很多 Clo​​jure 书籍都介绍了它。我知道《Clojure in Action》很好地涵盖了这些内容。

我会使用地图,尽管我并不是专门指一个函数,而是为什么地图总体上以及多种方法都很好。

最后,我会解释为什么有时确实需要使用循环..递归。在过去的一年多里,我得到的建议非常中肯。当你绝对需要时使用它。