Mam plik yacc opisujący pewien język, dla którego opracowuję edytor za pomocą IMP (projekt eclipse). Używam LPG jako generatora analizatora składni, więc musiałem wyodrębnić reguły BNF z mojego pliku YACC. otrzymany plik yacc zawiera reguły i akcje. Chciałem jednak wyodrębnić tylko zasady opisu gramatyki, które mają być używane w LPG. Jednym ze sposobów na to jest ręczne wyodrębnienie reguł i ponowne sformatowanie go do składni BNF (lub może być pisanie programu, aby przekonwertować go tak, jak chcę). Zastanawiam się, czy istnieje zautomatyzowany sposób robienia tego. Czytałem na niektórych blogach, że żubry mogłyby pomóc, ale nie mogłem dokładnie znaleźć odpowiednich poleceń. czy ktokolwiek wie, jak sobie z tym poradzić?Wyodrębnij reguły gramatyki BNF z pliku yacc
Nie mogę opublikować pliku yacc, który mam, ponieważ jest poufny. ale mogę dać przykład następująco
argExprList:
assignExp
{
// some rules here
}
| assignExpList ',' assignExp
{
//some other rules here
}
;
co chciałem być konwertowane na to po prostu jak
argExpList ::= assignExp|assignExpList ',' assignExp
To było dokładnie to, o co prosiłem. Rozwiązał mój problem. – lferasu
@Iferasu: ... następnie zaakceptuj odpowiedź Rici –