とある使い捨てコード
module Main where main :: IO () main = interact ruby ruby :: String -> String ruby "" = "" ruby s = case break ('('==) s of (_,[]) -> s (xs,_:ys) -> "<ruby><rb>"++xs++"</rb><rp>(</rp><rt>" ++ case break (')'==) ys of (_,[]) -> error $ "invalid input: "++s (ys',_:zs) -> ys'++"</rt><rp>)</rp></ruby>" ++ ruby zs