# PLATYPUS Language Specification ## Lexical Specification (INCOMPLETE) ## NOTE: **This is incredibly incomplete and broken, I am simply writing this down and will fix it as I read along the informal language specification provided to me** 1. Input Elements and Tokens ``` -> ASCII characters but not SEOF -> SEOF -> | -> | | | | | | ``` 2. White Space ``` -> ASCII SP character (space) | ASCII HT character (horizontal tab) | ASCII VT character (vertical tab) | ASCII FF character (form feed) | -> CR | LF | CR LF ``` 3. Comments ``` -> !< -> | -> but not ``` 4. Variable Identifiers ``` -> | -> -> | -> one of [a-z][A-Z] -> one of [a-z][A-Z][0-9] -> # ``` 5. Keywords ``` -> PLATYPUS | IF | THEN | ELSE | USING | REPEAT | INPUT | OUTPUT ``` 6. Integer Literals ``` -> | -> 0 | -> | -> 0 | -> one of [1-9] -> 0 -> 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 -> |