0
は期待通りに動作します:予想「末端には、」次のコードはコンパイルし
fun {Tokenize Lexemes}
case Lexemes of
Head|Tail then
case Head of
"+" then
operator(type:plus)|{Tokenize Tail}
else
if {String.isFloat Head} then
number(Head)|{Tokenize Tail}
else
nil
end
end
else
nil
end
end
をしかし、私は以下のコードのような別のケース句を、追加した場合、行方不明についてコンパイルするとき、私はエラーを取得します " end 'ステートメント。
fun {Tokenize Lexemes}
case Lexemes of
Head|Tail then
case Head of
"+" then
operator(type:plus)|{Tokenize Tail}
"*" then
operator(type:multiply)|{Tokenize Tail}
else
if {String.isFloat Head} then
number(Head)|{Tokenize Tail}
else
nil
end
end
else
nil
end
end
エラー:
** expected 'end'
** inside case phrase (at the line of the "*")
できますか?