 ;; [parsing-word] [symbol-word]
 (defconst factor-symbol-definition-regex
   (syntax-and-1-symbol
-   '("&" "CONSTANT" "DESTRUCTOR" "FORGET" "HELP" "LIBRARY"
+   '("&" "CONSTANT" "DESTRUCTOR" "FORGET" "GAME" "HELP" "LIBRARY"
      "MAIN" "MAIN-WINDOW" "STRING" "SYMBOL" "VAR")))
 
 ;; [parsing-word] [symbol-word]* ;
 (defconst factor-symbols-lines-regex
   (concat (syntax-begin '("SYMBOLS")) ws+ symbols-to-semicolon))
 
-;; (defconst factor-int-constant-def-regex
-;;   (syntax-and-1-symbol '("ALIEN" "CHAR" "NAN")))
+(defconst factor-types-lines-regex
+  (concat (syntax-begin '("SINGLETONS")) ws+ symbols-to-semicolon))
 
 (defconst factor-type-definition-regex
   (syntax-and-1-symbol

    "CONSULT:" "call-next-method"
    "EBNF:" ";EBNF" "ENUM:" "ERROR:"
    "FOREIGN-ATOMIC-TYPE:" "FOREIGN-ENUM-TYPE:" "FOREIGN-RECORD-TYPE:" "FUNCTION-ALIAS:"
    "GAME:" "GIR:"
    "GLSL-SHADER:" "GLSL-PROGRAM:"
    "HINTS:"
    "initial:" "INTERSECTION:" "IMPLEMENT-STRUCTS:"

      nil
      (1 'factor-font-lock-symbol nil t)
      (2 'factor-font-lock-symbol nil t)))
    ,(factor-syntax factor-predicate-regex '("P" "T" "P" "T"))
    ;; Highlights alien function definitions. Types in stack effect
    ;; declarations are given a bold face.
    (,(format "\\(\\(?:GL-\\)?FUNCTION\\|CALLBACK\\):[ \n]+%s[ \n]+%s[ \n]+" symbol symbol)
