exp_ :: ParsecT [Token] SourcePos Identity Expression
exp_ = addRange (
    do
       e <- exp0
       option (\_ -> e) $ 
            do 
                lexCOLCOL
                t <- contextAndType
                return $ \r -> Expression_Typed r e t
    )
    <?> Texts.parserExpression
exp_ :: ParsecT [Token] SourcePos Identity Expression
exp_ = addRange (
    do
       e <- exp0
       option (\_ -> e) $ 
            do 
                lexCOLCOL
                t <- contextAndType
                return $ \r -> Expression_Typed r e t
    )
    <?> Texts.parserExpression
exp_ = addRange (
    do
       e <- exp0
       option (\_ -> e) $ 
            do 
                lexCOLCOL
                t <- contextAndType
                return $ \r -> Expression_Typed r e t
    )
    <?> Texts.parserExpression