From 6e3503bb7b6c9aac12711477b8a474ce41c1cd7a Mon Sep 17 00:00:00 2001 From: "kr.angelov" Date: Mon, 1 Oct 2012 08:52:54 +0000 Subject: move examples/PennTreebank to /treebanks/PennTreebank --- examples/PennTreebank/PennFormat.hs | 38 ------------------------------------- 1 file changed, 38 deletions(-) delete mode 100644 examples/PennTreebank/PennFormat.hs (limited to 'examples/PennTreebank/PennFormat.hs') diff --git a/examples/PennTreebank/PennFormat.hs b/examples/PennTreebank/PennFormat.hs deleted file mode 100644 index 2aaf0a6b6..000000000 --- a/examples/PennTreebank/PennFormat.hs +++ /dev/null @@ -1,38 +0,0 @@ -module PennFormat(parseTreebank, showTree) where - -import Text.PrettyPrint -import Data.Tree -import Data.Char - -parseTreebank :: String -> [Tree String] -parseTreebank [] = [] -parseTreebank (c:cs) - | isSpace c = parseTreebank cs - | c == '(' = let (ts,cs1) = parseTrees cs - in ts ++ parseTreebank cs1 - -parseTrees [] = ([],[]) -parseTrees (c:cs) - | isSpace c = parseTrees cs - | c == ')' = ([],cs) - | c == '(' = let (w, cs1) = parseWord cs - (children,cs2) = parseTrees cs1 - (rest, cs3) = parseTrees cs2 - in (Node (normalize w) children : rest,cs3) - | otherwise = let (w, cs1) = parseWord (c:cs) - (rest, cs2) = parseTrees cs1 - in (Node w [] : rest,cs2) - -normalize tag = - let (tag0,mod) = break (=='-') tag - in if null tag0 - then tag - else tag0 - -parseWord = break (\c -> isSpace c || c == '(' || c == ')') - -printTree (Node w []) = text w -printTree (Node l children) = parens (text l <+> hsep (map printTree children)) - -showTree :: Tree String -> String -showTree = render . printTree -- cgit v1.2.3