cond的用途是什么,让erlang中保留单词?

时间:2015-12-06 05:36:04

标签: erlang

" cond"有什么用?和"让"在erlang中保留的单词,我在保留字列表中看到它们但从未在erlang中看到任何用途或者在erlang中的任何示例,我也在谷歌搜索但什么都没有。

在我看来,他们只是保留,就像" goto"和" const"在java但我可能是错的。所以请用很少的例子来解释这些关键词。

-module(hello_world).

start() ->
    io:format("hello_world").

1 个答案:

答案 0 :(得分:2)

我认为它们是出于同样的原因而保留goto在Java中保留:在这个范例中,术语condlet具有相当具体的含义,并且令人困惑的是程序员使用那些未引用的原子。

考虑到范围界定方式与列表推导的一致方式以及避免嵌套case语句(以及在大多数情况下对if的厌恶)的一般愿望,它也可能是这样的,使用{ <1}}或cond将来。

有两个提到这些的电子电气设备:EEP12EEP25

EEP12提到let作为更大讨论的一部分,引用Haskell let s。

EEP25提到,对于广义let而言,广义case的先前建议是不必要的 - 但我不知道这引用了什么建议(可能是EEP的先前草案)

在任何情况下,保留一个单词很容易预先做好 - 提前保留一个单词永远不会是一个突破性的变化,或者在你确定之后的某个时候发布它不需要它。但是,保留一个以前没有保留过的词是一种灾难。突然发现你真的需要一个像cond这样的术语,但是不能使用它,因为它已经在人们拥有的其他程序中已经很重要 - 所以你最终不得不弥补一些非标准的术语,这是有争议的。对于那些已经熟悉基本范式语义的语言的新手来说,不记得并且让他们感到困惑。