Skip to content

Instantly share code, notes, and snippets.

import Control.Monad (replicateM_)
import qualified Data.ByteString as B
import Network.Format.LLSD
import System.Environment
main = do
[path, count] <- getArgs
replicateM_ (read count) $ do
bs <- B.readFile path
case parseXML bs of
diff -rN -u old-text/Data/Text/Encoding/Fusion/Common.hs new-text/Data/Text/Encoding/Fusion/Common.hs
--- old-text/Data/Text/Encoding/Fusion/Common.hs 2010-08-15 12:44:14.251803996 -0700
+++ new-text/Data/Text/Encoding/Fusion/Common.hs 2010-08-15 12:44:14.274804276 -0700
@@ -45,19 +45,19 @@
Done -> Done
Skip s' -> Skip (S s' N N N)
Yield x xs
- | n <= 0x7F -> Yield c (S xs N N N)
- | n <= 0x07FF -> Yield a2 (S xs (J b2) N N)
- | n <= 0xFFFF -> Yield a3 (S xs (J b3) (J c3) N)
@bos
bos / ATs
Created August 15, 2010 18:43
{-# LANGUAGE FlexibleInstances, MultiParamTypeClasses, TypeFamilies #-}
module AT where
{- --- ORIGINAL --- -}
data Step s a = Done
| Skip !s
| Yield !a !s
{- --- WITH ATs --- -}
@bos
bos / ATs
Created August 15, 2010 18:42
{-# LANGUAGE FlexibleInstances, MultiParamTypeClasses, TypeFamilies #-}
module AT where
{- --- ORIGINAL --- -}
data Step s a = Done
| Skip !s
| Yield !a !s
{- --- WITH ATs --- -}