# Witherable

```
interface Witherable<T> extends Traversable<T>, Filterable<T> {
/**
* Partition a structure with effects
*/
wilt: Wilt<T>
/**
* Filter a structure with effects
*/
wither: Wither<T>
}
```

Added in v1.7.0 (type class)

`Witherable`

represents data structures which can be *partitioned* with effects in some Applicative functor.

`wilt`

signature (see Compactable `Separated`

):

```
<F>(F: Applicative<F>) => <RL, RR, A>(wa: HKT<W, A>, f: (a: A) => HKT<F, Either<RL, RR>>) => HKT<F, Separated<HKT<W, RL>, HKT<W, RR>>>
```

`wither`

signature:

```
<F>(F: Applicative<F>) => <A, B>(ta: HKT<W, A>, f: (a: A) => HKT<F, Option<B>>) => HKT<F, HKT<W, B>>
```