This package browser is in early development. Mind the rough edges.

ghc-these 1.1.1.1

Either-or-both data type

This package provides a data type These a b which can hold a value of either type or values of each type. This is usually thought of as an "inclusive or" type (contrasting Either a b as "exclusive or") or as an "outer join" type (contrasting (a, b) as "inner join").

data These a b = This a | That b | These a b

Since version 1, this package was split into parts:

  • https://hackage.haskell.org/package/semialign For Align and Zip type-classes.

  • https://hackage.haskell.org/package/semialign-indexed For SemialignWithIndex class, providing ialignWith and izipWith

  • https://hackage.haskell.org/package/these-lens For lens combinators.

  • http://hackage.haskell.org/package/monad-chronicle For transformers variant of These.

Installation

Install ghc-these 1.1.1.1 as follows:

guix install ghc-these@1.1.1.1

Or install the latest version:

guix install ghc-these

You can also install packages in augmented, pure or containerized environments for development or simply to try them out without polluting your user profile. See the guix shell documentation for more information.