就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center寻求指导。
9年前关闭。
好像一切 clojure 中需要用括号括起来。偶a simple hello world !
(println "Hello world!")
这种语法决定有什么好处?
最佳答案
根本原因是 Clojure 被设计为 homoiconic语言,即代码以该语言的核心数据结构表示。所有的 Lisps 都有这个属性,但很少有其他语言有。因此,Lisp 的整个语言设计都受到这一决定的强烈影响。
在 Lisp 设计的早期就做出了选择,列表将用于函数调用,形式如下:
(function arg1 arg2 arg3) => some result
这有很多优点:
(cons function-symbol list-of-args)
函数名可以放在括号外:
function (arg1 arg2 arg3) => some result
但这会有很多缺点:
关于syntax - 为什么 Clojure 语言使用这么多括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11391731/