| Strict data types to be used as accumulator for strict left folds and scans. For more comprehensive strict data types see https://hackage.haskell.org/package/strict-base-types . The names have been suffixed by a prime so that programmers can easily distinguish the strict versions from the lazy ones.

One major advantage of strict data structures as accumulators in folds and scans is that it helps the compiler optimize the code much better by unboxing. In a big tight loop the difference could be huge.

Documentation

data Tuple' a b Source #

A strict (,)

Constructors

Tuple' !a !b 
Instances
Instances details
(Show a, Show b) => Show (Tuple' a b) Source # 
Instance details

Defined in Streamly.Internal.Data.Tuple.Strict

Methods

showsPrec :: Int -> Tuple' a b -> ShowS Source #

show :: Tuple' a b -> String Source #

showList :: [Tuple' a b] -> ShowS Source #

data Tuple3' a b c Source #

A strict (,,)

Constructors

Tuple3' !a !b !c 
Instances
Instances details
(Show a, Show b, Show c) => Show (Tuple3' a b c) Source # 
Instance details

Defined in Streamly.Internal.Data.Tuple.Strict

Methods

showsPrec :: Int -> Tuple3' a b c -> ShowS Source #

show :: Tuple3' a b c -> String Source #

showList :: [Tuple3' a b c] -> ShowS Source #

data Tuple3Fused' a b c Source #

A strict (,,)

Constructors

Tuple3Fused' !a !b !c 
Instances
Instances details
(Show a, Show b, Show c) => Show (Tuple3Fused' a b c) Source # 
Instance details

Defined in Streamly.Internal.Data.Tuple.Strict

data Tuple4' a b c d Source #

A strict (,,,)

Constructors

Tuple4' !a !b !c !d 
Instances
Instances details
(Show a, Show b, Show c, Show d) => Show (Tuple4' a b c d) Source # 
Instance details

Defined in Streamly.Internal.Data.Tuple.Strict

Methods

showsPrec :: Int -> Tuple4' a b c d -> ShowS Source #

show :: Tuple4' a b c d -> String Source #

showList :: [Tuple4' a b c d] -> ShowS Source #