# MappingPackage3(A, B, C)ΒΆ

mappkg.spad line 146 [edit on github]

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)`

.