https://www.haskell.org/onlinereport/lexemes.html#ids In the above link, there is the following syntax: ```haskell varid -> (small {small | large | digit | ' }) conid -> large {small | large | digit | ' } reservedid -> case | class | data | default | deriving | do | else | if | import | in | infix | infixl | infixr | instance | let | module | newtype | of | then | type | where | _ ```