Guest User

Untitled

a guest
Oct 20th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. ## EBNF grammar for "AA Coodaus" (language by Halki elämän).
  2. ## NB: some cases may not be accurately represented just yet.
  3. ## Fixing them is left as an exercise for the reader.
  4.  
  5. alphabet = "A" | "B" | "C" | "D" | "E" | "F" | "G" | "H" | "I" | "J" | "K" | "L" | "M" | "N" | "O" | "P" | "Q" | "R" | "S" | "T" | "U" | "V" | "W" | "X" | "Y" | "Z" ;
  6. digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9";
  7. separator = "-" | ",";
  8. identifier = alphabet , { alphabet | digit } ;
  9. number = digit, { digit };
  10.  
  11. program = statement, { "\n" | "." , statement };
  12.  
  13. statement =
  14. connection-stmt |
  15. create-game-stmt |
  16. game-name-stmt |
  17. size-stmt |
  18. hack-stmt |
  19. dig-stmt |
  20. send-stmt |
  21. blu-stmt |
  22. level-stmt |
  23. connect-stmt |
  24. danger-stmt;
  25.  
  26. connection-stmt = "Ot-yhteys", identifier;
  27. create-game-stmt = "Cr-peli";
  28. game-name-stmt = "Peli ", identifier;
  29. size-stmt = "Koko ", number, "mega,t";
  30. hack-stmt = "Hkr-", identifier, [separator, identifier];
  31. dig-stmt = "Kv", ["-ka"], separator, identifier;
  32. send-stmt = "Send-", identifier;
  33. blu-stmt = "Blu-", (blu-connection-stmt | blu-users-stmt);
  34. blu-connection-stmt = "yhteys";
  35. blu-users-stmt = "users", identifier, {identifier};
  36. level-stmt = "Ket", separator, {identifier, separator, identifier, separator};
  37. connect-stmt = "connect";
  38. danger-stmt = "Vaara ", ("max" | number);
Add Comment
Please, Sign In to add comment