Otter #6269(2008/05/08 07:56 GMT) [ Haskell ] Rating0/0=0.00
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
module Main where import Language.Haskell.Syntax import Language.Haskell.Parser import Language.Haskell.Pretty import Data.Generics pp :: ParseResult HsModule -> String pp (ParseOk hsm) = prettyPrint hsm pp _ = "parse failed" repl :: ParseResult HsModule -> ParseResult HsModule repl (ParseOk hsm) = ParseOk $ (everywhere (mkT conversion)) hsm where conversion :: HsName -> HsName conversion (HsIdent "pp") = HsIdent "pop" conversion (HsIdent "pop") = HsIdent "pp" conversion pop = pop repl a = a main :: IO () main = do mod <- getContents putStr $ pp $ repl $ parseModule mod
Rating0/0=0.00-0+
[ reply ]
Otter #6269() [ Haskell ] Rating0/0=0.00
Rating0/0=0.00-0+
[ reply ]