mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-19 01:39:32 -06:00
the lincat of Int simplified to SS again (Linear,Lookup,CheckGrammar by commenting out)
This commit is contained in:
@@ -311,10 +311,10 @@ computeLType gr t = do
|
||||
|
||||
Q m c | elem c [cPredef,cPredefAbs] -> return ty
|
||||
Q m c | elem c [zIdent "Int"] ->
|
||||
let ints k = App (Q (IC "Predef") (IC "Ints")) (EInt k) in
|
||||
return $
|
||||
RecType [
|
||||
(LIdent "s", typeStr), (LIdent "last",ints 9),(LIdent "size",ints 1)]
|
||||
return $ defLinType
|
||||
---- let ints k = App (Q (IC "Predef") (IC "Ints")) (EInt k) in
|
||||
---- RecType [
|
||||
---- (LIdent "last",ints 9),(LIdent "s", typeStr), (LIdent "size",ints 1)]
|
||||
Q m c | elem c [zIdent "Float",zIdent "String"] -> return defLinType ----
|
||||
|
||||
Q m ident -> checkIn ("module" +++ prt m) $ do
|
||||
|
||||
@@ -230,12 +230,14 @@ lookupAbsDef gr m c = errIn ("looking up absdef of" +++ prt c) $ do
|
||||
|
||||
|
||||
lookupLincat :: SourceGrammar -> Ident -> Ident -> Err Type
|
||||
{- ----
|
||||
lookupLincat gr m c | elem c [zIdent "Int"] =
|
||||
let ints k = App (Q (IC "Predef") (IC "Ints")) (EInt k) in
|
||||
return $
|
||||
RecType [
|
||||
(LIdent "s", typeStr), (LIdent "last",ints 9),(LIdent "size",ints 1)]
|
||||
lookupLincat gr m c | elem c [zIdent "String", zIdent "Float"] =
|
||||
(LIdent "last",ints 9),(LIdent "s", typeStr),(LIdent "size",ints 1)]
|
||||
-}
|
||||
lookupLincat gr m c | elem c [zIdent "String", zIdent "Float", zIdent "Int"] =
|
||||
return defLinType --- ad hoc; not needed?
|
||||
|
||||
lookupLincat gr m c = do
|
||||
|
||||
@@ -80,9 +80,11 @@ linearizeToRecord gr mk m = lin [] where
|
||||
|
||||
recS t = R [Ass (L (identC "s")) t] ----
|
||||
|
||||
recInt i = R [Ass (L (identC "s")) (tK $ show i),
|
||||
Ass (L (identC "last")) (EInt (rem i 10)),
|
||||
Ass (L (identC "size")) (EInt (if i > 9 then 1 else 0))]
|
||||
recInt i = R [
|
||||
----Ass (L (identC "last")) (EInt (rem i 10)),
|
||||
Ass (L (identC "s")) (tK $ show i) ----,
|
||||
----Ass (L (identC "size")) (EInt (if i > 9 then 1 else 0))
|
||||
]
|
||||
|
||||
lookCat = return . errVal defLindef . look
|
||||
---- should always be given in the module
|
||||
|
||||
Reference in New Issue
Block a user