partial evaluator bug fix

Int was missing from the list of predefined canonical constants.
This commit is contained in:
hallgren
2012-12-18 13:03:20 +00:00
parent 403420be2b
commit c3beefba47
2 changed files with 3 additions and 2 deletions

View File

@@ -70,7 +70,7 @@ predefList =
-- cShow, cRead, cMapStr, cEqVal
(cError,Error),
-- Canonical values:
(cPBool,PBool),(cPFalse,PFalse),(cPTrue,PTrue),(cInts,Ints)]
(cPBool,PBool),(cPFalse,PFalse),(cPTrue,PTrue),(cInt,Int),(cInts,Ints)]
--- add more functions!!!
delta f vs =
@@ -93,6 +93,7 @@ delta f vs =
Error -> ap1 VError
-- Canonical values:
PBool -> canonical
Int -> canonical
Ints -> canonical
PFalse -> canonical
PTrue -> canonical

View File

@@ -51,5 +51,5 @@ data Predefined = Drop | Take | Tk | Dp | EqStr | Occur | Occurs | ToUpper
{- | Show | Read | ToStr | MapStr | EqVal -}
| Error
-- Canonical values below:
| PBool | PFalse | PTrue | Ints
| PBool | PFalse | PTrue | Int | Ints
deriving (Show,Eq,Ord,Ix,Bounded,Enum)