1) Игнорируются пробелы и упр. литеры 01X..1FX
2) Идентификаторы, целые, вещественные, строки без числовых кодов символов.
3) Объявления переменных int и double
4) Оператор присваивания
5) Операторы ввода >> и вывода <<

## Код:
```
TOKENS
      ident = (letter | "_") {letter | "_" | digit}.
      int = "0" {digit8}
         | digit {digit}
         | "0" ("x" | "X") digit16 {digit16}.
      float = digit { digit } "." { digit }
         [ ("e" | "E") [ "+" | "-" ] digit {digit} ].
      string = '"' { noQuoteAndEsc | "\" (noCtrl | eol) } '"'.

   PRODUCTIONS
      PrivPrimc = { Entry } EOF.
      
      Entry = [ Decls | Stat ] ";".
      
      Decls = ("double" | "int") Def {"," Def}.
      Def = ident ["=" Expr].
      
      Expr = SimpleExpr { (">" | "<" | ">=" | "<=" | "==" | "!=") SimpleExpr }.
      SimpleExpr = Factor { ("+" | "-") Factor }.
      Factor = Unary { ("*" | "/" | "%") Unary }.
      Unary = [ "+" | "-" ] (ident | int | float | "(" Expr ")").
      
      Stat = Inp | Out | Assign.
      Inp = ">>" ident { ">>" ident }.
      Out = "<<" (Expr | string) { "<<" (Expr | string) }.
      Assign = ident "=" Expr.
```

Вложение:Комментарий к файлу:Tools->Decode
Primc.txt[15.44 КБ]
Скачиваний: 1253

Требуются
1) i21sysIn:http://www.inr.ac.ru/~info21/software.htm, базовый комплект
2) Coco:http://www.zinnamturm.eu/downloadsAC.htm#Coco

1) Primc.atg компилировать кокой
2) Перетащить из конца PrivPrimcP описания ошибок в PrivPrimc.GetMsg
3) дальше - см. командеры в конце PrivPrimc.atg (компиляция, выполнение)

Тестировал мало, может какие ошибки остались...

P.S. i21sysIn рулит