// ** Lets start with the more trivial definitions of single characters: // // ::= ASCII 9 // ::= ASCII 10 // ::= ASCII 11 // ::= ASCII 13 // ::= ASCII 32 // ::= One of the characters: 0, 1, 2, 3, 4, 5, 6, 7, 8 or 9. // ::= One of the characters: a, b, c, d, e, f, g or h. // ::= One of the characters: 1, 2, 3, 4, 5, 6, 7 or 8. // ::= One of the characters: R, N, B, Q or K. // ::= One of the characters: + or #. // ::= One of the characters: A-Za-z0-9 // ::= One of the characters: A-Za-z0-9_ // ::= One of the characters ASCII 32...126 or 160...255. // ::= // // ** The white space definitions: // // ::= // // ::= // // // ::= // // // ** The definitions that exist of one or more characters: // // ::= * // ::= // ::= // // // // ** The definitions of single tokens: // // ::= * // ::= // ::= "*" // ::= 1-0 // 0-1 // 1/2-1/2 // * // ::= .. // ... // ::= . // // ::= // x // // x // O-O // O-O-O // ::= $ // // ** And finally, the definitions of one or more tokens on a row: // // ::= * // ::= // // ::= // ::= [ ] // // ::= // // ::= // // ::= // ::= * // ::= // // ::= // ::= // ::= ( ) // ::= ( ) // ::= // ::= { * } // : *