Add flakes
This commit is contained in:
@ -30,6 +30,7 @@ import System.IO.Unsafe (unsafeInterleaveIO)
|
||||
import Control.Parallel.Strategies (rseq, parMap)
|
||||
import qualified Data.List as L
|
||||
import Control.Monad (unless)
|
||||
import System.Posix (touchFile)
|
||||
|
||||
combine :: (MonadUnliftIO m, MonadResource m, MonadThrow m, MonadIO m) => ConduitM FilePath Header m ()
|
||||
combine = await >>= \case
|
||||
@ -45,6 +46,7 @@ run :: IO ()
|
||||
run = do
|
||||
datDir <- fromMaybe "./" <$> lookupEnv "HOME"
|
||||
let datFile = datDir </> ".addressbook.dat"
|
||||
touchFile datFile
|
||||
original <- Set.fromList . map LBS.toStrict . lbsLines <$> LBS.readFile datFile
|
||||
xs <- LBS.getContents >>= stream
|
||||
let set = original `Set.union` F.fold (parMap rseq F.fold (chunks 200 xs))
|
||||
|
Reference in New Issue
Block a user