forked from GitHub/gf-core
Using trie more.
This commit is contained in:
@@ -1,19 +1,18 @@
|
||||
module Glue where
|
||||
|
||||
import Trie
|
||||
import Trie2
|
||||
import Operations
|
||||
import List
|
||||
|
||||
-------- AR 8/11/2003, using Markus Forsberg's implementation of Huet's unglue
|
||||
|
||||
tcompileSimple :: [String] -> Trie
|
||||
tcompileSimple ss = tcompile [(s,[(atWP,s)]) | s <- ss]
|
||||
|
||||
decomposeSimple :: Trie -> String -> Err [String]
|
||||
decomposeSimple :: Trie Char a -> [Char] -> Err [[Char]]
|
||||
decomposeSimple t s = do
|
||||
let ss = map (decompose t) $ words s
|
||||
if any null ss
|
||||
then Bad "unknown word in input"
|
||||
else return $ concat [intersperse "&+" ws | ws <- ss]
|
||||
|
||||
exTrie = tcompileSimple $ words "ett två tre tjugo trettio hundra tusen"
|
||||
exTrie = tcompile (zip ws ws) where
|
||||
ws = words "ett två tre tjugo trettio hundra tusen"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user