-1

我浪费时间担心样式,例如间距,行缩进等。

我失去了适应项目之间不同风格的时间。

为什么语言在这方面变得灵活?为什么不要求非常严格的格式?

4

2 回答 2

2

好吧,一个很好的指导性例子是看看Pascal 和;命令分隔符发生了什么。

Nicklaus Wirth(Pascal 的设计者)提出的规则;是用于分隔块内的语句。从编译器的角度来看,这是明智的,因为这是唯一需要语法元素来解决歧义的情况。另外,它通常已经用逗号完成,所以处理它的代码就在那里。

问题是这是一个奇怪的规则,对于人类编码人员来说,这是一个难以理解的规则。面对变化也不稳定;如果您在块的末尾添加或删除一行,您必须更改哪一行没有分号。大多数 Pascal 用户最终在每个编码/调试周期中都有一个完整的阶段,这归结为他们的编译器向他们吐出错误,直到他们的分号正确。他们会讨厌它,进而他们讨厌帕斯卡。

将其与 Pascal 及其后代引入的相对较新的强类型概念结合起来,您就有了一些非常暴躁的开发人员。他们开始称 Pascal 及其类似的束缚和纪律语言,并被更宽松的语言如 C采用。

对于后来设计的语言,Nicklaus Wirth 吸取了教训,将分号定义为命令终止符,而不是分隔符。C 设计者当然更进一步,允许额外的分号成为合法(但被忽略)的语法元素。

于 2011-05-17T15:39:33.617 回答
0

据推测,用户定义自己的样式的选项(这是否由某些编辑器规则强制执行)比强制将某种样式作为其语法的一部分的语言更可取。然而,当涉及到特定规则时,有些语言会稍微严格一些。例如,Haskell 中有一个“功能”,其中给定的行必须比一些相关的前一行缩进更远才能正常工作(我忘记了这个特定语言功能的名称,但我相信有人知道)。

于 2011-05-17T15:33:36.610 回答