parseNonApp = parseTrue <|>
              parseFalse <|>
              parseSucc <|>
              parsePred <|>
              parseIsZero <|>
              parseIf <|>
              (try parseFloat) <|>
              parseTimesFloat <|>
              parseNat <|>
              parseAbs <|>
              parseLet <|>
              (try parseBinder) <|>
              parseVar <|>
              parseUnit <|>
              parseString <|>
              (try parseProj) <|>
              parseRecord <|>
              parseCase <|>
              parseVariant <|>
              parseInert <|>
              parseFix <|>
              parseLetrec <|>
              parseError <|>
              parseTryWith <|>
              parens parseTerm
parseNonApp = parseTrue <|>
              parseFalse <|>
              parseSucc <|>
              parsePred <|>
              parseIsZero <|>
              parseIf <|>
              (try parseFloat) <|>
              parseTimesFloat <|>
              parseNat <|>
              parseAbs <|>
              parseLet <|>
              (try parseBinder) <|>
              parseVar <|>
              parseUnit <|>
              parseString <|>
              (try parseProj) <|>
              parseRecord <|>
              parseCase <|>
              parseVariant <|>
              parseInert <|>
              parseFix <|>
              parseLetrec <|>
              parseError <|>
              parseTryWith <|>
              parens parseTerm
parseNonApp = parseTrue <|>
              parseFalse <|>
              parseSucc <|>
              parsePred <|>
              parseIsZero <|>
              parseIf <|>
              (try parseFloat) <|>
              parseTimesFloat <|>
              parseNat <|>
              parseAbs <|>
              parseLet <|>
              (try parseBinder) <|>
              parseVar <|>
              parseUnit <|>
              parseString <|>
              (try parseProj) <|>
              parseRecord <|>
              parseCase <|>
              parseVariant <|>
              parseInert <|>
              parseFix <|>
              parseLetrec <|>
              parseError <|>
              parseTryWith <|>
              parens parseTerm