Я должен создать автомат синтаксического анализа протокола SPDH.
SPDH определяет структуру сообщений запросов и ответов, которыми обмениваются электронный платежный терминал и сервер банка.
Спецификации этого протокола описаны в этом документе:
http://www.trauco.com/docs/SPDH-specification_070212.pdf
Я указал следующую грамматику для этого протокола:
Frame : = header fids etx ;
header : = fields ;
fields : = field fields | epsilon ;
field : = string | number ;
fids : = fid FieldSeparator fids | epsilon ;
fid : = exp | subfids ;
exp : = string | number| whitespace ;
subfids : = exp RecordSeparator subfids |epsilon ;
whitespace : = space whitespace | epsilon ;
space : = ' ' ;
string : = letter string | digits string | '-' string | period string |epsilon ;
FieldSeparator : = period | epsilon ;
RecordSeparator : = '!'| epsilon ;
number : = digits number | epsilon ;
digits : = '0'|'1'|...|'8'| '9' ;
letter : = 'a'|...|'z'|'A'|...|'Z' ;
period : = '.' ;
etx : = 'ETX'| epsilon ;
Мне нужна помощь в разработке моего приложения и реализации моей грамматики.