From b3d03db7bdaa658c71a1283cfbb52ad1a636ff6c Mon Sep 17 00:00:00 2001 From: krasimir Date: Mon, 23 Jun 2008 08:48:17 +0000 Subject: [PATCH] fix Haskell embedded grammars --- src-3.0/GF/Compile/GFCCtoHaskell.hs | 14 +++++++------- src-3.0/PGF.hs | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src-3.0/GF/Compile/GFCCtoHaskell.hs b/src-3.0/GF/Compile/GFCCtoHaskell.hs index 9d03aa490..59db9c364 100644 --- a/src-3.0/GF/Compile/GFCCtoHaskell.hs +++ b/src-3.0/GF/Compile/GFCCtoHaskell.hs @@ -54,14 +54,14 @@ haskPreamble name = "----------------------------------------------------", "", "class Gf a where", - " gf :: a -> Exp", - " fg :: Exp -> a", + " gf :: a -> Tree", + " fg :: Tree -> a", "", - predefInst "GString" "String" "EStr s", + predefInst "GString" "String" "Lit (LStr s)", "", - predefInst "GInt" "Integer" "EInt s", + predefInst "GInt" "Integer" "Lit (LInt s)", "", - predefInst "GFloat" "Double" "EFloat s", + predefInst "GFloat" "Double" "Lit (LFlt s)", "", "----------------------------------------------------", "-- below this line machine-generated", @@ -143,7 +143,7 @@ hInstance m (cat,rules) (if length xx == 0 then gId f else prParenth (gId f +++ foldr1 (+++) xx')) +++ "=" +++ mkRHS f xx' mkVars n = ["x" ++ show i | i <- [1..n]] - mkRHS f vars = "EApp (mkCId \"" ++ f ++ "\")" +++ + mkRHS f vars = "Fun (mkCId \"" ++ f ++ "\")" +++ "[" ++ prTList ", " ["gf" +++ x | x <- vars] ++ "]" @@ -156,7 +156,7 @@ fInstance m (cat,rules) = " _ -> error (\"no" +++ cat ++ " \" ++ show t)" where mkInst f xx = - " EApp i " ++ + " Fun i " ++ "[" ++ prTList "," xx' ++ "]" +++ "| i == mkCId \"" ++ f ++ "\" ->" +++ mkRHS f xx' where xx' = ["x" ++ show i | (_,i) <- zip xx [1..]] diff --git a/src-3.0/PGF.hs b/src-3.0/PGF.hs index 87f186573..a9ef0b721 100644 --- a/src-3.0/PGF.hs +++ b/src-3.0/PGF.hs @@ -29,7 +29,7 @@ module PGF( -- * Expressions -- ** Tree - Tree(..), + Tree(..), Literal(..), showTree, readTree, -- ** Expr