2012-03-31 48 views
3

当我学习某些语言的Clojure时,语法的可读性和便利性是最重要的问题(也许这是错误的..)。
所以,Clojure非常吸引我,但可能会有很多括号来维护。
我正在考虑是否有一个脚本,我可以在没有一些括号的情况下编写代码,然后将其编译到Clojure,这应该会更好。这样的程序到目前为止存在吗?
(一旦告知,是一个Scheme缩进语法,这很好。如何Clojure的?)是否有任何程序添加Clojure的括号?

回答

8

通常使用编辑器或IDE会照顾支架的为您服务。

这是特别有用的有“彩虹parens”,即括号给予不同的颜色来匹配他们的嵌套级别,所以你可以很快看到他们如何排队。

一些选项:

  • Eclipse的插件逆时针 - 如果伟大的你已经是,如果你想混的Clojure和Java代码的Eclipse用户。
  • Emacs - Lisp程序员的常用选择。有一个很好的Emacs的

注组Clojure的工具,在一般情况下,因为它的简洁,Clojure的代码使用比同等的Java代码更少的括号内。

3

一旦你习惯了parens,它们实际上比Java代码更容易阅读。可读性更重要的是正确的缩进。任何体面的IDE都会为您修正一段代码的缩进。

但是,您可能会发现宏执行您想要的操作。例如,线程宏( - >)或..宏。你可以编写自己的宏来实现更具体的目的。

下面是一个例子:

用户=>(STR(INC(整数/ parseInt函数 “10”))) “11”

可以被重写为 用户=>( - >“10 “Integer/parseInt inc str) ”11“

节省了两个paren对!活泉!回到你最初的问题,如果你可以在给定情况下使用更少的parens编写非模糊代码,那么应该可以编写一个宏来将更少的parens语法扩展为真正的Clojure。你有没有找到你想要的东西的例子?

+0

或多或少是这一个。只需使用缩进来替换一些括号即可。 – jiyinyiyong 2012-04-01 09:50:34

相关问题