diff options
| author | aarne <aarne@cs.chalmers.se> | 2008-06-25 16:43:48 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2008-06-25 16:43:48 +0000 |
| commit | b96b36f43de3e2f8b58d5f539daa6f6d47f25870 (patch) | |
| tree | 0992334be13cec6538a1dea22fbbf26ad6bdf224 /src/GF/Conversion/Haskell.hs | |
| parent | fe367412e0aeb4ad5c02de68e6eca382e0f96984 (diff) | |
removed src for 2.9
Diffstat (limited to 'src/GF/Conversion/Haskell.hs')
| -rw-r--r-- | src/GF/Conversion/Haskell.hs | 71 |
1 files changed, 0 insertions, 71 deletions
diff --git a/src/GF/Conversion/Haskell.hs b/src/GF/Conversion/Haskell.hs deleted file mode 100644 index abe651e1e..000000000 --- a/src/GF/Conversion/Haskell.hs +++ /dev/null @@ -1,71 +0,0 @@ ----------------------------------------------------------------------- --- | --- Maintainer : PL --- Stability : (stable) --- Portability : (portable) --- --- > CVS $Date: 2005/08/11 14:11:46 $ --- > CVS $Author: peb $ --- > CVS $Revision: 1.1 $ --- --- Converting/Printing different grammar formalisms in Haskell-readable format ------------------------------------------------------------------------------ - - -module GF.Conversion.Haskell where - -import GF.Formalism.GCFG -import GF.Formalism.SimpleGFC -import GF.Formalism.MCFG -import GF.Formalism.CFG -import GF.Formalism.Utilities -import GF.Conversion.Types -import GF.Data.Operations ((++++), (+++++)) -import GF.Infra.Print - -import Data.List (intersperse) - --- | SimpleGFC to Haskell -prtSGrammar :: SGrammar -> String -prtSGrammar rules = "-- Simple GFC grammar as a Haskell file" ++++ - "-- Autogenerated from the Grammatical Framework" +++++ - "import GF.Formalism.GCFG" ++++ - "import GF.Formalism.SimpleGFC" ++++ - "import GF.Formalism.Utilities" ++++ - "import GF.Canon.AbsGFC (CIdent(..), Label(..))" ++++ - "import GF.Infra.Ident (Ident(..))" +++++ - "grammar :: SimpleGrammar Ident (NameProfile Ident) String" ++++ - "grammar = \n\t[ " ++ - concat (intersperse "\n\t, " (map show rules)) ++ "\n\t]\n\n" - --- | MCFG to Haskell -prtMGrammar :: MGrammar -> String -prtMGrammar rules = "-- Multiple context-free grammar as a Haskell file" ++++ - "-- Autogenerated from the Grammatical Framework" +++++ - "import GF.Formalism.GCFG" ++++ - "import GF.Formalism.MCFG" ++++ - "import GF.Formalism.Utilities" +++++ - "grammar :: MCFGrammar String (NameProfile String) String String" ++++ - "grammar = \n\t[ " ++ - concat (intersperse "\n\t, " (map prtMRule rules)) ++ "\n\t]\n\n" - where prtMRule (Rule (Abs cat cats (Name fun profiles)) (Cnc lcat lcats lins)) - = show (Rule (Abs (prt cat) (map prt cats) (Name (prt fun) (map cnvProfile profiles))) - (Cnc (map prt lcat) (map (map prt) lcats) (map cnvLin lins))) - cnvLin (Lin lbl syms) = Lin (prt lbl) (map (mapSymbol prtMArg id) syms) - prtMArg (cat, lbl, nr) = (prt cat, prt lbl, nr) - --- | CFG to Haskell -prtCGrammar :: CGrammar -> String -prtCGrammar rules = "-- Context-free grammar as a Haskell file" ++++ - "-- autogenerated from the Grammatical Framework" +++++ - "import GF.Formalism.CFG" ++++ - "import GF.Formalism.Utilities" ++++ - "\ngrammar :: CFGrammar String (NameProfile String) String" ++++ - "grammar = \n\t[ " ++ - concat (intersperse "\n\t, " (map prtCRule rules)) ++ "\n\t]\n\n" - where prtCRule (CFRule cat syms (Name fun profiles)) - = show (CFRule (prt cat) (map (mapSymbol prt id) syms) - (Name (prt fun) (map cnvProfile profiles))) - -cnvProfile (Unify args) = Unify args -cnvProfile (Constant forest) = Constant (fmap prt forest) |
