Data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 7387c8f97b
commit cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions

View file

@ -0,0 +1,19 @@
-- stack runhaskell --package=conduit-extra --package=conduit-merge
import Control.Monad.Trans.Resource (runResourceT)
import qualified Data.ByteString.Char8 as BS
import Data.Conduit (($$), (=$=))
import Data.Conduit.Binary (sinkHandle, sourceFile)
import qualified Data.Conduit.Binary as Conduit
import qualified Data.Conduit.List as Conduit
import Data.Conduit.Merge (mergeSources)
import System.Environment (getArgs)
import System.IO (stdout)
main :: IO ()
main = do
inputFileNames <- getArgs
let inputs = [sourceFile file =$= Conduit.lines | file <- inputFileNames]
runResourceT $ mergeSources inputs $$ sinkStdoutLn
where
sinkStdoutLn = Conduit.map (`BS.snoc` '\n') =$= sinkHandle stdout

View file

@ -0,0 +1,15 @@
-- stack runhaskell --package=pipes-safe --package=pipes-interleave
import Pipes (runEffect, (>->))
import Pipes.Interleave (interleave)
import Pipes.Prelude (stdoutLn)
import Pipes.Safe (runSafeT)
import Pipes.Safe.Prelude (readFile)
import Prelude hiding (readFile)
import System.Environment (getArgs)
main :: IO ()
main = do
sourceFileNames <- getArgs
let sources = map readFile sourceFileNames
runSafeT . runEffect $ interleave compare sources >-> stdoutLn