summaryrefslogtreecommitdiff
path: root/src/GF
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2007-12-14 09:25:18 +0000
committeraarne <aarne@cs.chalmers.se>2007-12-14 09:25:18 +0000
commitf85ba4bfa03ec006248a47ff7b1b232e8c1fae08 (patch)
tree5bc0e5c590aca434b01589adae42c9c3de06d709 /src/GF
parentab7d15ab38d81eb44f527c65378c8fd34300dae7 (diff)
removed dep. on GFCCRaw
Diffstat (limited to 'src/GF')
-rw-r--r--src/GF/Command/PPrTree.hs2
-rw-r--r--src/GF/Compile/ShellState.hs2
-rw-r--r--src/GF/Conversion/SimpleToFCFG.hs2
-rw-r--r--src/GF/Conversion/Types.hs2
-rw-r--r--src/GF/Devel/Compile/GFtoGFCC.hs2
-rw-r--r--src/GF/Devel/GFCCtoHaskell.hs2
-rw-r--r--src/GF/Devel/GFCCtoJS.hs2
-rw-r--r--src/GF/Devel/GrammarToGFCC.hs2
-rw-r--r--src/GF/Formalism/FCFG.hs2
-rw-r--r--src/GF/GFCC/API.hs2
-rw-r--r--src/GF/GFCC/CId.hs14
-rw-r--r--src/GF/GFCC/CheckGFCC.hs2
-rw-r--r--src/GF/GFCC/DataGFCC.hs2
-rw-r--r--src/GF/GFCC/Generate.hs2
-rw-r--r--src/GF/GFCC/Linearize.hs2
-rw-r--r--src/GF/GFCC/Macros.hs2
-rw-r--r--src/GF/GFCC/OptimizeGFCC.hs2
-rw-r--r--src/GF/GFCC/Raw/ConvertGFCC.hs10
-rw-r--r--src/GF/GFCC/Raw/GFCCRaw.cf98
-rw-r--r--src/GF/GFCC/ShowLinearize.hs2
-rw-r--r--src/GF/Parsing/FCFG.hs2
-rw-r--r--src/GF/Parsing/FCFG/PInfo.hs2
-rw-r--r--src/GF/Parsing/GFC.hs2
-rw-r--r--src/GF/Speech/GrammarToVoiceXML.hs2
-rw-r--r--src/GF/Speech/TransformCFG.hs2
25 files changed, 41 insertions, 125 deletions
diff --git a/src/GF/Command/PPrTree.hs b/src/GF/Command/PPrTree.hs
index 2a3aff4da..4067fdec6 100644
--- a/src/GF/Command/PPrTree.hs
+++ b/src/GF/Command/PPrTree.hs
@@ -1,7 +1,7 @@
module GF.Command.PPrTree (pTree, prExp, tree2exp) where
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.GFCC.Macros
import qualified GF.Command.ParGFShell as P
import GF.Command.PrintGFShell
diff --git a/src/GF/Compile/ShellState.hs b/src/GF/Compile/ShellState.hs
index ebb318608..e2e5486ca 100644
--- a/src/GF/Compile/ShellState.hs
+++ b/src/GF/Compile/ShellState.hs
@@ -17,7 +17,7 @@ module GF.Compile.ShellState where
import GF.Data.Operations
import GF.Canon.GFC
import GF.Canon.AbsGFC
-import GF.GFCC.Raw.AbsGFCCRaw(CId(CId))
+import GF.GFCC.CId
--import GF.GFCC.DataGFCC(mkGFCC)
import GF.Canon.CanonToGFCC
import GF.Grammar.Macros
diff --git a/src/GF/Conversion/SimpleToFCFG.hs b/src/GF/Conversion/SimpleToFCFG.hs
index a85c1843e..081a2485d 100644
--- a/src/GF/Conversion/SimpleToFCFG.hs
+++ b/src/GF/Conversion/SimpleToFCFG.hs
@@ -24,7 +24,7 @@ import GF.Formalism.FCFG
import GF.GFCC.Macros --hiding (prt)
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.Data.BacktrackM
import GF.Data.SortedList
diff --git a/src/GF/Conversion/Types.hs b/src/GF/Conversion/Types.hs
index befc495a0..97c2ace05 100644
--- a/src/GF/Conversion/Types.hs
+++ b/src/GF/Conversion/Types.hs
@@ -18,7 +18,7 @@ module GF.Conversion.Types where
import qualified GF.Infra.Ident as Ident (Ident(..), wildIdent, isWildIdent)
import qualified GF.Canon.AbsGFC as AbsGFC (CIdent(..), Label(..))
-import qualified GF.GFCC.Raw.AbsGFCCRaw as AbsGFCC (CId(..))
+import qualified GF.GFCC.CId
import qualified GF.Grammar.Grammar as Grammar (Term)
import GF.Formalism.GCFG
diff --git a/src/GF/Devel/Compile/GFtoGFCC.hs b/src/GF/Devel/Compile/GFtoGFCC.hs
index 3fc3331de..2d11e960f 100644
--- a/src/GF/Devel/Compile/GFtoGFCC.hs
+++ b/src/GF/Devel/Compile/GFtoGFCC.hs
@@ -19,7 +19,7 @@ import GF.Devel.PrintGFCC
import qualified GF.GFCC.Macros as CM
import qualified GF.GFCC.DataGFCC as C
import qualified GF.GFCC.DataGFCC as D
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.Infra.Option ----
import GF.Data.Operations
import GF.Text.UTF8
diff --git a/src/GF/Devel/GFCCtoHaskell.hs b/src/GF/Devel/GFCCtoHaskell.hs
index 6eccff7e5..787216782 100644
--- a/src/GF/Devel/GFCCtoHaskell.hs
+++ b/src/GF/Devel/GFCCtoHaskell.hs
@@ -18,7 +18,7 @@ module GF.Devel.GFCCtoHaskell (grammar2haskell, grammar2haskellGADT) where
import GF.GFCC.Macros
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.Data.Operations
import GF.Text.UTF8
diff --git a/src/GF/Devel/GFCCtoJS.hs b/src/GF/Devel/GFCCtoJS.hs
index 542f2dfa7..ca2cfa183 100644
--- a/src/GF/Devel/GFCCtoJS.hs
+++ b/src/GF/Devel/GFCCtoJS.hs
@@ -2,7 +2,7 @@ module GF.Devel.GFCCtoJS (gfcc2js,gfcc2grammarRef) where
import qualified GF.GFCC.Macros as M
import qualified GF.GFCC.DataGFCC as D
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import qualified GF.JavaScript.AbsJS as JS
import qualified GF.JavaScript.PrintJS as JS
diff --git a/src/GF/Devel/GrammarToGFCC.hs b/src/GF/Devel/GrammarToGFCC.hs
index 6cbd68793..0ae0129ad 100644
--- a/src/GF/Devel/GrammarToGFCC.hs
+++ b/src/GF/Devel/GrammarToGFCC.hs
@@ -8,7 +8,7 @@ import qualified GF.Grammar.Lookup as Look
import qualified GF.GFCC.Macros as CM
import qualified GF.GFCC.DataGFCC as C
import qualified GF.GFCC.DataGFCC as D
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import qualified GF.Grammar.Abstract as A
import qualified GF.Grammar.Macros as GM
--import qualified GF.Grammar.Compute as Compute
diff --git a/src/GF/Formalism/FCFG.hs b/src/GF/Formalism/FCFG.hs
index 37d5485a8..a630b4230 100644
--- a/src/GF/Formalism/FCFG.hs
+++ b/src/GF/Formalism/FCFG.hs
@@ -38,7 +38,7 @@ import Data.Array
import qualified Data.Map as Map
import GF.Formalism.Utilities
-import qualified GF.GFCC.Raw.AbsGFCCRaw as AbsGFCC
+import qualified GF.GFCC.CId as AbsGFCC
import GF.Infra.PrintClass
diff --git a/src/GF/GFCC/API.hs b/src/GF/GFCC/API.hs
index bf795d91b..e3a7fc3c9 100644
--- a/src/GF/GFCC/API.hs
+++ b/src/GF/GFCC/API.hs
@@ -19,7 +19,7 @@ import GF.GFCC.Linearize
import GF.GFCC.Generate
import GF.GFCC.Macros
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.GFCC.Raw.ConvertGFCC
import GF.GFCC.Raw.ParGFCCRaw
import GF.Command.PPrTree
diff --git a/src/GF/GFCC/CId.hs b/src/GF/GFCC/CId.hs
new file mode 100644
index 000000000..e4efa98ba
--- /dev/null
+++ b/src/GF/GFCC/CId.hs
@@ -0,0 +1,14 @@
+module GF.GFCC.CId (
+ module GF.GFCC.Raw.AbsGFCCRaw,
+ prCId,
+ cId
+ ) where
+
+import GF.GFCC.Raw.AbsGFCCRaw (CId(CId))
+
+prCId :: CId -> String
+prCId (CId s) = s
+
+cId :: String -> CId
+cId = CId
+
diff --git a/src/GF/GFCC/CheckGFCC.hs b/src/GF/GFCC/CheckGFCC.hs
index 065e2cb54..a6fd0332d 100644
--- a/src/GF/GFCC/CheckGFCC.hs
+++ b/src/GF/GFCC/CheckGFCC.hs
@@ -1,6 +1,6 @@
module GF.GFCC.CheckGFCC (checkGFCC, checkGFCCio, checkGFCCmaybe) where
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.GFCC.Macros
import GF.GFCC.DataGFCC
import GF.GFCC.ErrM
diff --git a/src/GF/GFCC/DataGFCC.hs b/src/GF/GFCC/DataGFCC.hs
index 74d8948a0..35c8b08c5 100644
--- a/src/GF/GFCC/DataGFCC.hs
+++ b/src/GF/GFCC/DataGFCC.hs
@@ -1,6 +1,6 @@
module GF.GFCC.DataGFCC where
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.Infra.CompactPrint
import GF.Text.UTF8
diff --git a/src/GF/GFCC/Generate.hs b/src/GF/GFCC/Generate.hs
index f03718d8c..1924a8849 100644
--- a/src/GF/GFCC/Generate.hs
+++ b/src/GF/GFCC/Generate.hs
@@ -2,7 +2,7 @@ module GF.GFCC.Generate where
import GF.GFCC.Macros
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import qualified Data.Map as M
import System.Random
diff --git a/src/GF/GFCC/Linearize.hs b/src/GF/GFCC/Linearize.hs
index 9618c33e6..826d3597b 100644
--- a/src/GF/GFCC/Linearize.hs
+++ b/src/GF/GFCC/Linearize.hs
@@ -2,7 +2,7 @@ module GF.GFCC.Linearize where
import GF.GFCC.Macros
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import Data.Map
import Data.List
diff --git a/src/GF/GFCC/Macros.hs b/src/GF/GFCC/Macros.hs
index 29d1f6947..3e88952d4 100644
--- a/src/GF/GFCC/Macros.hs
+++ b/src/GF/GFCC/Macros.hs
@@ -1,6 +1,6 @@
module GF.GFCC.Macros where
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.GFCC.DataGFCC
----import GF.GFCC.PrintGFCC
import Data.Map
diff --git a/src/GF/GFCC/OptimizeGFCC.hs b/src/GF/GFCC/OptimizeGFCC.hs
index c385b069b..394458041 100644
--- a/src/GF/GFCC/OptimizeGFCC.hs
+++ b/src/GF/GFCC/OptimizeGFCC.hs
@@ -1,6 +1,6 @@
module GF.GFCC.OptimizeGFCC where
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.GFCC.DataGFCC
import GF.Data.Operations
diff --git a/src/GF/GFCC/Raw/ConvertGFCC.hs b/src/GF/GFCC/Raw/ConvertGFCC.hs
index 16f75d9d5..79dae1fd6 100644
--- a/src/GF/GFCC/Raw/ConvertGFCC.hs
+++ b/src/GF/GFCC/Raw/ConvertGFCC.hs
@@ -59,7 +59,7 @@ toGFCC (Grm [
toType :: RExp -> Type
toType e = case e of
- App cat [App (CId "hypo") hypos, App (CId "arg") exps] ->
+ App cat [App (CId "H") hypos, App (CId "X") exps] ->
DTyp (lmap toHypo hypos) cat (lmap toExp exps)
_ -> error $ "type " ++ show e
@@ -70,7 +70,7 @@ toHypo e = case e of
toExp :: RExp -> Exp
toExp e = case e of
- App fun [App (CId "abs") xs, App (CId "arg") exps] ->
+ App fun [App (CId "B") xs, App (CId "X") exps] ->
DTr [x | AId x <- xs] (AC fun) (lmap toExp exps)
App (CId "Eq") _ -> EEq [] ----
AMet -> DTr [] (AM 0) []
@@ -125,8 +125,8 @@ fromType :: Type -> RExp
fromType e = case e of
DTyp hypos cat exps ->
App cat [
- App (CId "hypo") (lmap fromHypo hypos),
- App (CId "arg") (lmap fromExp exps)]
+ App (CId "H") (lmap fromHypo hypos),
+ App (CId "X") (lmap fromExp exps)]
fromHypo :: Hypo -> RExp
fromHypo e = case e of
@@ -135,7 +135,7 @@ fromHypo e = case e of
fromExp :: Exp -> RExp
fromExp e = case e of
DTr xs (AC fun) exps ->
- App fun [App (CId "abs") (lmap AId xs), App (CId "arg") (lmap fromExp exps)]
+ App fun [App (CId "B") (lmap AId xs), App (CId "X") (lmap fromExp exps)]
DTr xs (AM _) exps -> AMet ----
EEq _ -> App (CId "Eq") [] ----
_ -> error $ "exp " ++ show e
diff --git a/src/GF/GFCC/Raw/GFCCRaw.cf b/src/GF/GFCC/Raw/GFCCRaw.cf
index 2ec3fac52..bedaef685 100644
--- a/src/GF/GFCC/Raw/GFCCRaw.cf
+++ b/src/GF/GFCC/Raw/GFCCRaw.cf
@@ -10,101 +10,3 @@ AMet. RExp ::= "?" ;
terminator RExp "" ;
token CId (('_' | letter) (letter | digit | '\'' | '_')*) ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{-
-Grm. Grammar ::=
- "grammar" CId "(" [CId] ")" "(" [Flag] ")" ";"
- Abstract ";"
- [Concrete] ;
-
-Abs. Abstract ::=
- "abstract" "{"
- "flags" [Flag]
- "fun" [FunDef]
- "cat" [CatDef]
- "}" ;
-
-Cnc. Concrete ::=
- "concrete" CId "{"
- "flags" [Flag]
- "lin" [LinDef]
- "oper" [LinDef]
- "lincat" [LinDef]
- "lindef" [LinDef]
- "printname" [LinDef]
- "param" [LinDef] -- lincats with param value names
- "}" ;
-
-Flg. Flag ::= CId "=" String ;
-Cat. CatDef ::= CId "[" [Hypo] "]" ;
-
-Fun. FunDef ::= CId ":" Type "=" Exp ;
-Lin. LinDef ::= CId "=" Term ;
-
-DTyp. Type ::= "[" [Hypo] "]" CId [Exp] ; -- dependent type
-DTr. Exp ::= "[" "(" [CId] ")" Atom [Exp] "]" ; -- term with bindings
-
-AC. Atom ::= CId ;
-AS. Atom ::= String ;
-AI. Atom ::= Integer ;
-AF. Atom ::= Double ;
-AM. Atom ::= "?" Integer ;
-
-R. Term ::= "[" [Term] "]" ; -- record/table
-P. Term ::= "(" Term "!" Term ")" ; -- projection/selection
-S. Term ::= "(" [Term] ")" ; -- concatenated sequence
-K. Term ::= Tokn ; -- token
-V. Term ::= "$" Integer ; -- argument
-C. Term ::= Integer ; -- parameter value/label
-F. Term ::= CId ; -- global constant
-FV. Term ::= "[|" [Term] "|]" ; -- free variation
-W. Term ::= "(" String "+" Term ")" ; -- prefix + suffix table
-TM. Term ::= "?" ; -- lin of metavariable
-
-KS. Tokn ::= String ;
-KP. Tokn ::= "[" "pre" [String] "[" [Variant] "]" "]" ;
-Var. Variant ::= [String] "/" [String] ;
-
-
-RP. Term ::= "(" Term "@" Term ")"; -- DEPRECATED: record parameter alias
-
-terminator Concrete ";" ;
-terminator Flag ";" ;
-terminator CatDef ";" ;
-terminator FunDef ";" ;
-terminator LinDef ";" ;
-separator CId "," ;
-separator Term "," ;
-terminator Exp "" ;
-terminator String "" ;
-separator Variant "," ;
-
-
-
--- the following are needed if dependent types or HOAS or defs are present
-
-Hyp. Hypo ::= CId ":" Type ;
-AV. Atom ::= "$" CId ;
-
-EEq. Exp ::= "{" [Equation] "}" ; -- list of pattern eqs; primitive: []
-Equ. Equation ::= [Exp] "->" Exp ; -- patterns are encoded as exps
-
-separator Hypo "," ;
-terminator Equation ";" ;
-
--}
diff --git a/src/GF/GFCC/ShowLinearize.hs b/src/GF/GFCC/ShowLinearize.hs
index a9365a13b..f627dfd28 100644
--- a/src/GF/GFCC/ShowLinearize.hs
+++ b/src/GF/GFCC/ShowLinearize.hs
@@ -8,7 +8,7 @@ module GF.GFCC.ShowLinearize (
import GF.GFCC.Linearize
import GF.GFCC.Macros
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
--import GF.GFCC.PrintGFCC ----
import GF.Data.Operations
diff --git a/src/GF/Parsing/FCFG.hs b/src/GF/Parsing/FCFG.hs
index 9fbd3d986..8cd969b69 100644
--- a/src/GF/Parsing/FCFG.hs
+++ b/src/GF/Parsing/FCFG.hs
@@ -22,7 +22,7 @@ import qualified GF.Parsing.FCFG.Active as Active
import GF.Parsing.FCFG.PInfo
import GF.GFCC.DataGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import GF.GFCC.Macros
import GF.GFCC.ErrM
diff --git a/src/GF/Parsing/FCFG/PInfo.hs b/src/GF/Parsing/FCFG/PInfo.hs
index dcdade261..bf2859911 100644
--- a/src/GF/Parsing/FCFG/PInfo.hs
+++ b/src/GF/Parsing/FCFG/PInfo.hs
@@ -15,7 +15,7 @@ import GF.Formalism.FCFG
import GF.Data.SortedList
import GF.Data.Assoc
import GF.Parsing.FCFG.Range
-import qualified GF.GFCC.Raw.AbsGFCCRaw as AbsGFCC
+import qualified GF.GFCC.CId as AbsGFCC
import Data.Array
import Data.Maybe
diff --git a/src/GF/Parsing/GFC.hs b/src/GF/Parsing/GFC.hs
index 03700daf5..ed450b63f 100644
--- a/src/GF/Parsing/GFC.hs
+++ b/src/GF/Parsing/GFC.hs
@@ -25,7 +25,7 @@ import qualified GF.Grammar.Grammar as Grammar
import qualified GF.Grammar.Macros as Macros
import qualified GF.Canon.AbsGFC as AbsGFC
import qualified GF.GFCC.DataGFCC as AbsGFCC
-import GF.GFCC.Raw.AbsGFCCRaw (CId (..))
+import GF.GFCC.CId
import qualified GF.GFCC.ErrM as ErrM
import qualified GF.Infra.Ident as Ident
import GF.CF.CFIdent (CFCat, cfCat2Ident, CFTok, wordsCFTok, prCFTok)
diff --git a/src/GF/Speech/GrammarToVoiceXML.hs b/src/GF/Speech/GrammarToVoiceXML.hs
index 7d05d4a46..ad7f25d1c 100644
--- a/src/GF/Speech/GrammarToVoiceXML.hs
+++ b/src/GF/Speech/GrammarToVoiceXML.hs
@@ -11,7 +11,7 @@
module GF.Speech.GrammarToVoiceXML (grammar2vxml) where
import GF.Canon.CanonToGFCC (canon2gfcc)
-import qualified GF.GFCC.Raw.AbsGFCCRaw as C
+import qualified GF.GFCC.CId as C
import GF.GFCC.DataGFCC (GFCC(..), Abstr(..))
import GF.GFCC.Macros
import qualified GF.Canon.GFC as GFC
diff --git a/src/GF/Speech/TransformCFG.hs b/src/GF/Speech/TransformCFG.hs
index 545bc021c..3d7ebd809 100644
--- a/src/GF/Speech/TransformCFG.hs
+++ b/src/GF/Speech/TransformCFG.hs
@@ -17,7 +17,7 @@
module GF.Speech.TransformCFG where
import GF.Canon.CanonToGFCC (canon2gfcc)
-import qualified GF.GFCC.Raw.AbsGFCCRaw as C
+import qualified GF.GFCC.CId as C
import GF.GFCC.Macros (lookType,catSkeleton)
import GF.GFCC.DataGFCC (GFCC)
import GF.Conversion.Types