Two -package:numhask

Homogeneous pair
A data type with two tags A and B that allows us to encode the good old Either as Sigma Two, where the tags A and B correspond to Left and Right, respectively. See eitherToSigma and sigmaToEither that witness the isomorphism between Either a b and Sigma (Two a b).
-2
'2' 2nd
Create a map from two key-value pairs which hashes don't collide. To enhance sharing, the second key-value pair is represented by the hash of its key and a singleton HashMap pairing its key with its value. Note: to avoid silly thunks, this function must be strict in the key. See issue #232. We don't need to force the HashMap argument because it's already in WHNF (having just been matched) and we just put it directly in an array.
The number two.
The value 2 bound to the Int type encoded as an Expr.
> two
2 :: Int
A constructor will be encoded to a 2-element array where the first element is the tag of the constructor (modified by the constructorTagModifier) and the second element the encoded contents of the constructor.
CSTOPB - Send two stop bits, else one