oating :: Parser (AST' a)
floating = do
    sign <- option '+' (oneOf "+-")
    n <- float
    return $
        case sign of
        '-' -> ULiteral $ Real (negate n)
        '+' -> ULiteral $ Prob n
        _   -> error "floating: the impossible happened"


floating :: Parser (AST' a)
floating = do
    sign <- option '+' (oneOf "+-")
    n <- float
    return $
        case sign of
        '-' -> ULiteral $ Real (negate n)
        '+' -> ULiteral $ Prob n
        _   -> error "floating: the impossible happened"
floating = do
    sign <- option '+' (oneOf "+-")
    n <- float
    return $
        case sign of
        '-' -> ULiteral $ Real (negate n)
        '+' -> ULiteral $ Prob n
        _   -> error "floating: the impossible happened"