2016-03-29 15 views
0

私は2つの予約キーワードと2つの類似の文では、次の構文定義を持っています。そして、予約済みのキーワードでAmbuigity

module Test 

// parse(#Statement,"do c") succeeds 
// parse(#Statement,"define c") gives an ambiguity 

start syntax Statement = 
    do: "do" Identifier+ 
    | define: "define" Identifier+; 

layout MyLayout = [\t\n\ \r\f]*; 

lexical Identifier = ([a-z0-9] !<< [a-z][a-z0-9]* !>> [a-z0-9]) \ MyKeywords; 

keyword MyKeywords = "do" | "define"; 

parse(#Statement,"do c") 

は同様のケースが

parse(#Statement,"define c") 
、細かい解析し、

はあいまいです。

どうすればいいですか?

答えて

0

申し訳ありませんが、テストモジュールが曖昧さを引き起こした別のモジュールによって干渉されました。

+0

質問全体を最もよく削除してください! – jurgenv

関連する問題