Erlang官方用户指南(http://erlang.org/doc/reference_manual/data_types.html#id67942)说:
如果原子不是以小写字母开头,或者包含除字母数字字符,下划线(_)或@之外的其他字符,则用单引号(')括起来。
为什么Erlang允许原子包含裸@符号?它是否具有实际用途或任何历史意义?
答案 0 :(得分:7)
是否有实际用途
是的。 Erlang中的节点名称表示为原子,它们包含分隔名称和主机的@
。在没有单引号的原子中允许@
可以方便地键入它们(除非它们包含其他特殊字符,如.
或-
)。
$ erl
1> foo@bar.
foo@bar