-- Copyright (C) 2008 Eric Kow -- This is to be BSD3 licensed module NLP.ScfgStuff where toyGram2 :: Scfg toyGram2 = Scfg "S" [ ScfgRule "S" ["NP_S","VP"] ["VP","NP_S"] , ScfgRule "VP" ["V","NP_O"] ["NP_O","V"] , ScfgRule "V" [ "x2" ] [ "y2" ] , ScfgRule "NP_S" [ "x1" ] [ "y1" ] , ScfgRule "NP_O" [ "x3" ] [ "y3" ] ] toyGram3 :: Scfg toyGram3 = Scfg "S" [ ScfgRule "S" ["NP","VP"] ["VP","NP"] , ScfgRule "VP" ["x2"] ["y2"] , ScfgRule "NP" [ "x1" ] [ "y1" ] ] toyGram :: Scfg toyGram = Scfg "S" [ ScfgRule "S" ["NP","VP"] ["NP","VP"] , ScfgRule "NP" ["Det","N"] ["Det","N"] , ScfgRule "NP" ["Det","Adj","N"] ["Det","N","Adj"] , ScfgRule "NP" ["NP","PP"] ["NP","PP"] , ScfgRule "VP" ["VP","PP"] ["VP","PP"] , ScfgRule "VP" ["V","NP"] ["V","NP"] , ScfgRule "PP" ["P","NP"] ["P","NP"] , ScfgRule "Det" [ "the" ] [ "le" ] , ScfgRule "Det" [ "a" ] [ "un" ] , ScfgRule "Det" [ "some" ] [ "du" ] , ScfgRule "N" [ "boy" ] [ "garcon" ] , ScfgRule "N" [ "code" ] [ "code" ] , ScfgRule "Adj" [ "ugly" ] [ "moche" ] , ScfgRule "N" [ "machine" ] [ "machine" ] , ScfgRule "V" [ "hacks" ] [ "hacke" ] , ScfgRule "P" [ "on" ] [ "sur" ] , ScfgRule "NP" [ "somebody" ] [ "quelqu'un" ] , ScfgRule "NP" [ "something" ] [ "quelque", "chose" ] , ScfgRule "PP" [ "somewhere" ] [ "quelque", "part" ] ] data Scfg = Scfg { start :: String , rules :: [ScfgRule] } data ScfgRule = ScfgRule { scfgLhs :: String , scfgRhs1 :: [String] , scfgRhs2 :: [String] } deriving (Eq, Show)