2016-03-29 5 views
0

Ben iki ayrılmış anahtar kelimeler ve iki benzer ifadelerle aşağıdaki sözdizimi tanımı: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"; 

Sonra

parse(#Statement,"do c") 

ince ayrıştırır, benzer durum

parse(#Statement,"define c") 

, bir belirsizlik verir.

Neyi yanlış yapıyorum?

cevap

0

Üzgünüm çocuklar, durum çözüldü, Test modülü, belirsizliğe neden olan başka bir modül tarafından engellendi.

+0

en iyi sorunun tamamını kaldırın! – jurgenv