# MappingPackage3(A, B, C)ΒΆ

- A: SetCategory
- B: SetCategory
- C: SetCategory

various Currying operations.

- *: (B -> C, A -> B) -> A -> C
`f*g`

is the function`h`

such that`h x= f(g x)`

.

- constantLeft: B -> C -> (A, B) -> C
`constantLeft(f)`

is the function`g`

such that`g (a, b)= f b`

.

- constantRight: A -> C -> (A, B) -> C
`constantRight(f)`

is the function`g`

such that`g (a, b)= f a`

.

- curryLeft: ((A, B) -> C, A) -> B -> C
`curryLeft(f, a)`

is the function`g`

such that`g b = f(a, b)`

.

- curryRight: ((A, B) -> C, B) -> A -> C
`curryRight(f, b)`

is the function`g`

such that`g a = f(a, b)`

.

- twist: (A, B) -> C -> (B, A) -> C
`twist(f)`

is the function`g`

such that`g (a, b)= f(b, a)`

.