Haskell新手:使用布局与否?有什么优点和缺点(使用示例)

时间:2008-09-24 22:28:23

标签: programming-languages haskell coding-style

我似乎无法找到有关haskells布局功能的更多信息,因为我理解它类似于pythons格式化要求,除了它是可选的。如何选择不正确使用此选项?从没有它开始是一个好主意,以便我对语言本身有一个坚实的感觉吗?

2 个答案:

答案 0 :(得分:6)

参见http://en.wikibooks.org/wiki/Programming:Haskell_indentationhttp://www.haskell.org/onlinereport/lexemes.html#sect2.7 (两者都包含例子)。

优点:

  • 少输入
  • 少阅读,看起来更漂亮(如果你觉得舒服)

缺点:

  • 你可能会弄错,特别是如果你不熟悉它。如果你不确定的话,大括号会让事情变得清晰。

答案 1 :(得分:4)

Haskell的布局是其定义功能之一,imho。 Haskell的整个哲学的一部分是它更像数学。使用布局是向前迈出的一大步。对于许多程序,如果你要用数学方程式编写伪代码,它最终将成为使用布局的有效Haskell语法。我强烈建议至少尝试布局。

缺点是可能会出现细微的缩进错误。这首先是令人沮丧的,尤其是如果你不熟悉它但是编译器会告诉你它们。一旦你修复它,你就会得到一些通常非常令人愉快的代码。

您不能简单地使用花括号表示显式块,使用分号表示分隔符。