嗨,我正在写一个简单的词法分析器
:- module(lekser, [lekser/3]).
lekser(Tokens) -->
white_space,
(
(
"{", !, { Token = tkLBrace }
; "}", !, { Token = tkRBrace }
; ")", !, { Token = tkRParen }
; "(", !, { Token = tkLParen }
; ";", !, { Token = tkSColon }
; "\", !, { Token = tkLambda }
; "->", !, { Token = tkImpli }
; "<", !, { Token = tkLT }
; ">", !, { Token = tkGT }
; "<=", !, { Token = tkLeq }
; ">=", !, { Token = tkGeq }
; "=", !, { Token = tkAssgn }
; "\=", !, { Token = tkNeq }
; "+", !, { Token = tkPlus }
; "-", !, { Token = tkMinus }
; "*", !, { Token = tkTimes }
; "div", !, { Token = tkDiv }
; "mod", !, { Token = tkMod }
...
...)).
这是代码的开头,如果有人告诉我我在哪里犯了错误,因为 swi 代码编辑器说有一个错误(即使只放了几个空行)Syntax error: String too long (see style_check/1)
...好吧,我知道是什么原因,但我不知道为什么它会像这个编辑器那样工作"\"
,以某种奇怪的方式解析,我必须做到,"\""
但我可能不会是 \ 运算符,而是 \" 如何改变它 ?