mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-22 19:22:50 -06:00
experiment with Finnish morphology
This commit is contained in:
25
examples/uusisuomi/MyDiff.hs
Normal file
25
examples/uusisuomi/MyDiff.hs
Normal file
@@ -0,0 +1,25 @@
|
||||
module Main where
|
||||
|
||||
import System
|
||||
|
||||
-- compare lines word-by-word, returning difference pairs with their positions
|
||||
|
||||
main = do
|
||||
x:y:_ <- getArgs
|
||||
old <- readFile x >>= return . lines
|
||||
new <- readFile y >>= return . lines
|
||||
mapM_ comp (zip old new)
|
||||
|
||||
comp (ws1,ws2) = do
|
||||
let diffs = [form ++ ":" ++ w1 ++ "-" ++ w2 |
|
||||
(form,(w1,w2)) <- zip forms (zip (words ws1) (words ws2)), diff w2 w1]
|
||||
putStr $ unwords diffs
|
||||
if null diffs then return () else putStrLn ""
|
||||
|
||||
forms = map show [1..]
|
||||
|
||||
diff w ws = notElem w (chop ws) where
|
||||
chop cs = case span (/='/') cs of
|
||||
([],_) -> []
|
||||
(w1,ww) -> w1:chop (drop 1 ww)
|
||||
|
||||
Reference in New Issue
Block a user