2017-09-15 3 views

Répondre

0

intervertissant l'ordre de déclaration fixe la question

TArrow . Typ ::= Typ "->" Typ1; 
TSum . Typ1 ::= SumType; 
TProd . Typ2 ::= Typ2 "*" Typ3; 
TNat . Typ3 ::= "nat" ; 
TVoid . Typ3 ::= "<>" ; 
coercions Typ 3; 
+1

Je suis heureux de voir que vous avez trouvé une solution. Pour donner un peu d'explication: à moins que vous ne [le définissiez explicitement] (http://bnfc.readthedocs.io/en/latest/lbnf.html#entry-point-pragmas), le point d'entrée de votre grammaire va être la catégorie de la première règle. Une alternative aurait été d'ajouter 'entrypoints Typ;' pour définir le point d'entrée. –