4

infix 3 ..错误出来。定义自定义中缀时允许或不允许哪些字符?我在哪里可以找到在线列表?

谢谢

4

1 回答 1

4

您可以添加任何非限定标识符。

以下来自 SML 90' 定义

以下是Core 中使用的保留字。它们不能(除了=)用作标识符。

abstype and andalso as case do datatype else
end exception fn fun handle if in infix
infixr let local nonfix of op open orelse
raise rec then type val with withtype while
( ) [ ] { } , : ; ... _ | = => -> #

……

标识符可以是字母数字:任何字母、数字或素数 (') 和下划线 (_) 以字母或素数开头的序列,或符号:以下符号的任何非空序列 :

! % & # + - / : < = > ? @ \ ~ ' ^ | *

然而,在任何一种情况下,保留字都被排除在外。这意味着例如 # 和 | 不是标识符,而是 ## 和 |=| 是标识符。该规则的唯一例外是符号 =,它是一个保留字,也允许作为标识符来代表相等谓词。

于 2013-04-16T15:39:02.130 回答