| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 | 
							- module.exports = function(hljs) {
 
-   return {
 
-     aliases: ['ml'],
 
-     keywords: {
 
-       keyword:
 
-         /* according to Definition of Standard ML 97  */
 
-         'abstype and andalso as case datatype do else end eqtype ' +
 
-         'exception fn fun functor handle if in include infix infixr ' +
 
-         'let local nonfix of op open orelse raise rec sharing sig ' +
 
-         'signature struct structure then type val with withtype where while',
 
-       built_in:
 
-         /* built-in types according to basis library */
 
-         'array bool char exn int list option order real ref string substring vector unit word',
 
-       literal:
 
-         'true false NONE SOME LESS EQUAL GREATER nil'
 
-     },
 
-     illegal: /\/\/|>>/,
 
-     lexemes: '[a-z_]\\w*!?',
 
-     contains: [
 
-       {
 
-         className: 'literal',
 
-         begin: /\[(\|\|)?\]|\(\)/,
 
-         relevance: 0
 
-       },
 
-       hljs.COMMENT(
 
-         '\\(\\*',
 
-         '\\*\\)',
 
-         {
 
-           contains: ['self']
 
-         }
 
-       ),
 
-       { /* type variable */
 
-         className: 'symbol',
 
-         begin: '\'[A-Za-z_](?!\')[\\w\']*'
 
-         /* the grammar is ambiguous on how 'a'b should be interpreted but not the compiler */
 
-       },
 
-       { /* polymorphic variant */
 
-         className: 'type',
 
-         begin: '`[A-Z][\\w\']*'
 
-       },
 
-       { /* module or constructor */
 
-         className: 'type',
 
-         begin: '\\b[A-Z][\\w\']*',
 
-         relevance: 0
 
-       },
 
-       { /* don't color identifiers, but safely catch all identifiers with '*/
 
-         begin: '[a-z_]\\w*\'[\\w\']*'
 
-       },
 
-       hljs.inherit(hljs.APOS_STRING_MODE, {className: 'string', relevance: 0}),
 
-       hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null}),
 
-       {
 
-         className: 'number',
 
-         begin:
 
-           '\\b(0[xX][a-fA-F0-9_]+[Lln]?|' +
 
-           '0[oO][0-7_]+[Lln]?|' +
 
-           '0[bB][01_]+[Lln]?|' +
 
-           '[0-9][0-9_]*([Lln]|(\\.[0-9_]*)?([eE][-+]?[0-9_]+)?)?)',
 
-         relevance: 0
 
-       },
 
-       {
 
-         begin: /[-=]>/ // relevance booster
 
-       }
 
-     ]
 
-   };
 
- };
 
 
  |