14

如我所见,clojure 的变量名字符比 c/c++/java 多。例如:

函数以“?”结尾 通常返回一个布尔值,它们是谓词。

还有以“-”开头或以“!”结尾的变量。

我认为这些都是clojure风格的命名。那么,clojure 中通常的命名规则是什么?clojure 程序员有什么共同点吗?

4

3 回答 3

24

值得一看 Clojure 的库编码标准,我认为它可能仍然是 Clojure 编码风格的最佳参考。

主要函数命名约定似乎是:

  • 使用小写的函数名:frobnicate
  • 多个单词名称使用连字符作为分隔符:frobnicate-with-extra-fizz
  • 如果需要,使用命名空间允许您重用好名称:my.special.collection/concat
  • 用于?指示返回 true 或 false 的谓词:sequential?
  • 用于!指示具有不安全交易的副作用的函数,例如:set!

对于局部变量,以下是常见的:

  • f, g, h- 函数
  • n- 表示大小或计数的整数
  • index, i- 整数索引
  • x, y- 数字
  • s- 字符串输入
  • coll- 一个集合
  • pred- 谓词闭包
  • & more- 可变输入
于 2012-05-24T07:38:56.380 回答
2

Clojure 是 Lisp 的一种方言,因此可能适用 Lisp 约定:http: //www.cliki.net/naming%20conventions

于 2012-05-24T06:30:02.917 回答
0

除了@mikera 提到的库编码标准外,现在还有一个(社区驱动的)Clojure 样式指南:https ://github.com/bbatsov/clojure-style-guide

于 2014-01-16T16:33:42.640 回答