preproc = '\<(?:external|open|include|[A-Z][\w\']*(?=\.))\>' include "number.lang" string delim "\"" "\"" escape "\\" keyword = "and|as|assert|asr|begin|class|closed|constraint|do|done|downto|else|end|exception|false|for|fun|function|functor|if|in|inherit|initializer|land|lazy|let|lor|lsl|lsr|lxor|match|method|mod|module|mutable|new|object|of|or|parser|private|rec|sig|struct|then|to|true|try|type|val|virtual|when|while|with" comment delim "(*" "*)" multiline nested type = '\<(?:[A-Z][\w\']*(?!\.)|int|int32|int64|nativeint|bool|char|exn|option|float|unit|string|list|array|ref|format|format4|lazy_t|in_channel|out_channel)\>' include "symbols.lang" cbracket = "{|}"