This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# OPTIONS -Wall #-} | |
import Control.Monad (when,forever) | |
import Control.Monad.Trans | |
import Control.Monad.Trans.Resource | |
import qualified Data.ByteString as B | |
import Data.ByteString (ByteString) | |
import Data.Conduit | |
import qualified Data.Conduit.List as CL | |
import qualified Data.Conduit.Binary as CB |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- CL.sourceList [1..10] $$ sinkFork' (CL.consume) (CL.isolate 0 =$ CL.consume) | |
-- ([1],[]) | |
{-# LANGUAGE ScopedTypeVariables #-} | |
import Data.Conduit | |
import qualified Data.Conduit.List as CL | |
import Control.Applicative ((<$>), (<*>), Applicative, pure, (<|>)) | |
import Data.Functor.Identity (runIdentity) | |
import Debug.Trace | |
sinkFork :: (Applicative m, Monad m) => Sink a m b -> Sink a m c -> Sink a m (b, c) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# LANGUAGE ScopedTypeVariables #-} | |
{-# OPTIONS -Wall #-} | |
import Data.Conduit | |
import Data.Conduit.Network | |
import Control.Monad.IO.Class (liftIO) | |
import Control.Concurrent.Lifted (fork,threadDelay) | |
import Network (withSocketsDo) | |
import qualified Control.Exception.Lifted as EL | |
import Control.Monad.Trans.Resource |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# OPTIONS -Wall #-} | |
import Data.Conduit | |
import Data.Conduit.Network | |
import Control.Monad.IO.Class (liftIO) | |
import Control.Concurrent.Lifted (fork) | |
import Network (withSocketsDo) | |
main::IO () | |
main = | |
liftIO $ withSocketsDo $ runTCPClient (ClientSettings 5000 "127.0.0.1") $ \serverSrc serverSink -> do |