SML元组访问
据我所知,在Simple ML中,元组是通过SML元组访问,sml,Sml,据我所知,在Simple ML中,元组是通过#ns访问的,以前我见过它工作,但现在它不工作了 我试过下面这句话: val a =#2 ("one", "2", "three") 但它给了我以下错误: first.sml:25.26 Error: syntax error found at EOF uncaught exception Compile [Compile: "syntax error"] raised at: ../compiler/Parse/main/smlfile.sm
#n
s访问的,以前我见过它工作,但现在它不工作了
我试过下面这句话:
val a =#2 ("one", "2", "three")
但它给了我以下错误:
first.sml:25.26 Error: syntax error found at EOF
uncaught exception Compile [Compile: "syntax error"]
raised at: ../compiler/Parse/main/smlfile.sml:15.24-15.46
../compiler/TopLevel/interact/evalloop.sml:44.55
../compiler/TopLevel/interact/evalloop.sml:296.17-296.20
-
奇怪 标准ML允许您定义自己的任意运算符。这意味着,当混用中缀运算符和前缀运算符时,它们之间需要有空格,否则它们将被解释为一个运算符
换句话说,SML认为您试图调用代码中不存在的
=#
运算符。如果您在=
和#
之间添加一个空格,它将正常工作。我假设编译器将=#2
解释为一个符号名(#和=也可以是标识符的一部分)。尝试在=
和#
字符之间留出空格。