idiomatic (hackage): Idiomatically is used with DerivingVia to derive Applicative for types with multiple constructors.  The name comes from the original paper on Applicatives: Idioms: applicative programming with effects.  It features an extensible domain-specific language of sums with Applicative instances. Idiomatically is then passed a type-level list of applicative sums that specify how deriving should take place.  This derives the standard behaviour of ZipList but this same "RightBias Terminal" behaviour describes the Maybe and Validation applicative as well.  Idiomatically shares an intimate relationship with Generically1: it is defined in terms of Generically1 and they are interchangeable when there is an empty list of sums:  Based on Abstracting with Applicatives.
Keywords: bsd3|generics|library