From aef9430eb0576964a3fb669c741f1c689724bb5a Mon Sep 17 00:00:00 2001 From: peb Date: Mon, 21 Mar 2005 12:54:24 +0000 Subject: "Committed_by_peb" --- src/GF/CF/ChartParser.hs | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) (limited to 'src/GF/CF') diff --git a/src/GF/CF/ChartParser.hs b/src/GF/CF/ChartParser.hs index 71b25730c..793ce8b40 100644 --- a/src/GF/CF/ChartParser.hs +++ b/src/GF/CF/ChartParser.hs @@ -5,9 +5,9 @@ -- Stability : (stable) -- Portability : (portable) -- --- > CVS $Date: 2005/02/18 19:21:07 $ +-- > CVS $Date: 2005/03/21 13:54:24 $ -- > CVS $Author: peb $ --- > CVS $Revision: 1.5 $ +-- > CVS $Revision: 1.6 $ -- -- Bottom-up Kilbury chart parser from "Pure Functional Parsing", chapter 5. -- OBSOLETE -- should use new MCFG parsers instead @@ -15,9 +15,9 @@ module ChartParser (chartParser) where -import Tracing -import PrintParser -import PrintSimplifiedTerm +-- import Tracing +-- import PrintParser +-- import PrintSimplifiedTerm import Operations import CF @@ -117,11 +117,11 @@ chartParser0 (productions, terminal) = cparse | otherwise = [cats] cparse :: Category -> [Token] -> ([ParseTree], String) - cparse start input = trace "ChartParser" $ + cparse start input = -- trace "ChartParser" $ case lookup (0, length input, start) $ - tracePrt "#edgeTrees" (prt . map (length.snd)) $ + -- tracePrt "#edgeTrees" (prt . map (length.snd)) $ edgeTrees of - Just trees -> tracePrt "#trees" (prt . length . fst) $ + Just trees -> -- tracePrt "#trees" (prt . length . fst) $ (trees, "Chart:" ++++ prChart passiveEdges) Nothing -> ([], "Chart:" ++++ prChart passiveEdges) where @@ -136,7 +136,7 @@ chartParser0 (productions, terminal) = cparse (i, b, a:bs) <- elems state ] initialChart :: Chart - initialChart = tracePrt "#initialChart" (prt . map (length.elems)) $ + initialChart = -- tracePrt "#initialChart" (prt . map (length.elems)) $ emptySet : map initialState (zip [0..] input) where initialState (j, sym) = makeSet [ (j, cat, []) | (cat, _) <- terminal sym ] @@ -151,12 +151,12 @@ chartParser0 (productions, terminal) = cparse a `elemSet` emptyCats ] passiveEdges :: [Passive] - passiveEdges = tracePrt "#passiveEdges" (prt . length) $ + passiveEdges = -- tracePrt "#passiveEdges" (prt . length) $ [ (i, j, cat) | (j, state) <- zip [0..] $ - tracePrt "#passiveChart" - (prt . map (length.filter (\(_,_,x)->null x).elems)) $ - tracePrt "#activeChart" (prt . map (length.elems)) $ + -- tracePrt "#passiveChart" + -- (prt . map (length.filter (\(_,_,x)->null x).elems)) $ + -- tracePrt "#activeChart" (prt . map (length.elems)) $ finalChart, (i, cat, []) <- elems state ] ++ @@ -190,9 +190,11 @@ chartParser0 (productions, terminal) = cparse tree <- trees ] +{- instance Print ParseTree where prt (Node name cat trees) = prt name++"."++prt cat++"^{"++prtSep "," trees++"}" prt (Leaf token) = prt token +-} -- AR 10/12/2002 -- cgit v1.2.3