fixing number of interrogatives in English Structural

This commit is contained in:
aarne
2008-05-29 16:16:19 +00:00
parent 96bdd18dc3
commit 2505bfc892
4 changed files with 6 additions and 13 deletions

View File

@@ -336,9 +336,7 @@ computeLType gr t = do
where where
comp ty = case ty of comp ty = case ty of
_ | Just _ <- isTypeInts ty -> return ty ---- shouldn't be needed _ | Just _ <- isTypeInts ty -> return ty ---- shouldn't be needed
| ty == typeInt -> return ty ---- shouldn't be needed | isPredefConstant ty -> return ty ---- shouldn't be needed
| ty == typeFloat -> return ty ---- shouldn't be needed
| ty == typeError -> return ty ---- shouldn't be needed
Q m ident -> checkIn ("module" +++ prt m) $ do Q m ident -> checkIn ("module" +++ prt m) $ do
ty' <- checkErr (lookupResDef gr m ident) ty' <- checkErr (lookupResDef gr m ident)
@@ -409,14 +407,6 @@ inferLType gr trm = case trm of
, ,
checkErr (lookupResDef gr m ident) >>= infer checkErr (lookupResDef gr m ident) >>= infer
, ,
{-
do
over <- getOverload gr Nothing trm
case over of
Just trty -> return trty
_ -> prtFail "not overloaded" trm
,
-}
prtFail "cannot infer type of constant" trm prtFail "cannot infer type of constant" trm
] ]

View File

@@ -245,7 +245,7 @@ prRefinement t = case t of
prOperSignature :: (QIdent,Type) -> String prOperSignature :: (QIdent,Type) -> String
prOperSignature (f, t) = prQIdent f +++ ":" +++ prt t prOperSignature (f, t) = prQIdent f +++ ":" +++ prt t
-- to look up a constant etc in a search tree -- to look up a constant etc in a search tree --- why here? AR 29/5/2008
lookupIdent :: Ident -> BinTree Ident b -> Err b lookupIdent :: Ident -> BinTree Ident b -> Err b
lookupIdent c t = case lookupTree prt c t of lookupIdent c t = case lookupTree prt c t of

View File

@@ -30,7 +30,7 @@ isInPredefined = err (const True) (const False) . typPredefined
typPredefined :: Ident -> Err Type typPredefined :: Ident -> Err Type
typPredefined c@(IC f) = case f of typPredefined c@(IC f) = case f of
"Int" -> return typePType "Int" -> return typePType
"Float" -> return typePType "Float" -> return typeType
"Error" -> return typeType "Error" -> return typeType
"Ints" -> return $ mkFunType [cnPredef "Int"] typePType "Ints" -> return $ mkFunType [cnPredef "Int"] typePType
"PBool" -> return typePType "PBool" -> return typePType

View File

@@ -307,6 +307,9 @@ isTypeInts ty = case ty of
constPredefRes :: String -> Term constPredefRes :: String -> Term
constPredefRes s = Q (IC "Predef") (zIdent s) constPredefRes s = Q (IC "Predef") (zIdent s)
constPredefAbs :: String -> Term
constPredefAbs s = Q (IC "Predef") (zIdent s)
isPredefConstant :: Term -> Bool isPredefConstant :: Term -> Bool
isPredefConstant t = case t of isPredefConstant t = case t of
Q (IC "Predef") _ -> True Q (IC "Predef") _ -> True