我是一名非英语母语人士。在我阅读Why Functional Programming Matters时,我对以下段落感到困惑:
即使是功能性程序员也应该对这些不满意 所谓的优势,因为他们在利用中没有任何帮助 功能语言的力量。一个人不能写一个程序 尤其缺乏任务陈述 参考透明。 没有程序质量的标准 在这里,因此没有理想的目标。
我不确定最后一句是否意味着"故意不写任何作业声明并不会提高节目的质量,因此不应该这样做。"或者只是"没有一般的程序质量标准"。
很抱歉,如果我在错误的地方询问。
任何帮助都将不胜感激。
答案 0 :(得分:0)
通过程序质量的标准",他意味着你可以测量的东西,或者你至少可以定性地看看你是做得好还是做得好。因此,诸如速度,代码清晰度,可并行性,易于更改,易于重新分解等属性都可以是您可以测量的定量属性或定性属性,您可以看到程序的新版本更好或更差比旧版本。作为程序员,你可以给自己一个类似于&#34的工作;加快这个程序的速度"或者"更容易为此程序添加功能"。另一方面:
无法编写特别缺乏赋值语句的程序,或者特别是引用透明的程序。
这些东西是二进制(尽管ML程序员会告诉你)。你不能给自己一个像#34这样的作业;让这个程序使用更少的作业语句" (根据休斯的说法)或"使这个程序更具参考性透明度#34;这也很难说你是否在一开始就写好你的程序,或者你还有改进的余地。