data-effects-th-0.2.0.0: Template Haskell utilities for the data-effects library.
Copyright(c) 2023 Sayo Koyoneda
LicenseMPL-2.0 (see the file LICENSE)
Maintainer[email protected]
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageGHC2021

Data.Effect.TH

Description

 
Synopsis

Documentation

makeEffect :: [Name] -> [Name] -> Q [Dec] Source #

makeEffect_ :: [Name] -> [Name] -> Q [Dec] Source #

(&) :: a -> (a -> b) -> b infixl 1 #

& is a reverse application operator. This provides notational convenience. Its precedence is one higher than that of the forward application operator $, which allows & to be nested in $.

This is a version of flip id, where id is specialized from a -> a to (a -> b) -> (a -> b) which by the associativity of (->) is (a -> b) -> a -> b. flipping this yields a -> (a -> b) -> b which is the type signature of &

Examples

Expand
>>> 5 & (+1) & show
"6"
>>> sqrt $ [1 / n^2 | n <- [1..1000]] & sum & (*6)
3.1406380562059946

Since: base-4.8.0.0

newtype MakeEffectConf Source #

Instances

Instances details
Default MakeEffectConf Source # 
Instance details

Defined in Data.Effect.TH.Internal

Methods

def :: MakeEffectConf #

deriveHFunctor :: (Infinite (Q Type) -> Q Type) -> DataInfo -> Q [Dec] Source #

Derive an instance of HFunctor for a type constructor of any higher-order kind taking at least two arguments.