public static Validation <Fail, Arr <B> > Sequence <Fail, A, B>(this Arr <A> ta, Func <A, Validation <Fail, B> > f) => ta.Map(f).Sequence();
public static Arr <Arr <B> > Traverse <A, B>(this Arr <Arr <A> > xxs, Func <A, B> f) => CollT.AllCombinationsOf(xxs.Map(xs => xs.ToList()).ToArray(), f) .Map(toArray) .ToArr();
public static Writer <MonoidW, W, Arr <A> > Sequence <MonoidW, W, A>(this Arr <Writer <MonoidW, W, A> > ma) where MonoidW : struct, Monoid <W> => SequenceFast(ma).Map(toArray);
public static Seq <A> Cons <A>(this A head, Arr <A> tail) => Cons(head, tail.Value);
public bool Equals(Arr <A> other) => default(MArr <A>).Equals(this, other);
public static Arr <T> remove <T>(Arr <T> array, T value) => array.Remove(value);
public static Arr <T> rev <T>(Arr <T> array) => array.Reverse();
public static HashSet <Arr <A> > Sequence <A>(this Arr <HashSet <A> > ta) => ta.Traverse(identity);
public static RWS <MonoidW, R, W, S, Arr <A> > Sequence <MonoidW, R, W, S, A>(this Arr <RWS <MonoidW, R, W, S, A> > ma) where MonoidW : struct, Monoid <W> => SequenceFast(ma).Map(toArray);
public static OptionUnsafe <Arr <B> > Sequence <A, B>(this Arr <A> ta, Func <A, OptionUnsafe <B> > f) => ta.Map(f).Sequence();
public static Either <L, Arr <A> > Sequence <L, A>(this Arr <Either <L, A> > ta) => ta.Traverse(identity);
public static async Task <Arr <B> > Traverse <A, B>(this Arr <Task <A> > ma, Func <A, B> f) { var rb = await Task.WhenAll(ma.Map(async a => f(await a))).ConfigureAwait(false); return(new Arr <B>(rb)); }
public static State <S, Arr <B> > Traverse <S, A, B>(this Arr <State <S, A> > ma, Func <A, B> f) => TraverseFast(ma, f).Map(toArray);
public static State <S, Arr <A> > Sequence <S, A>(this Arr <State <S, A> > ma) => SequenceFast(ma).Map(toArray);
public static Arr <T> add <T>(Arr <T> array, T value) => array.Add(value);
public static bool equals <EQ, A>(Arr <A> x, Arr <A> y) where EQ : struct, Eq <A> => EqArr <EQ, A> .Inst.Equals(x, y);
public static Arr <T> addRange <T>(Arr <T> array, IEnumerable <T> value) => array.AddRange(value);
public static Either <L, Arr <B> > Sequence <L, A, B>(this Arr <A> ta, Func <A, Either <L, B> > f) => ta.Map(f).Sequence();
public static Arr <T> removeAt <T>(Arr <T> array, int index) => array.RemoveAt(index);
public static Aff <Arr <B> > TraverseParallel <A, B>(this Arr <Aff <A> > ma, Func <A, B> f) => TraverseParallel <A, B>(ma, f, SysInfo.DefaultAsyncSequenceParallelism);
public static Seq <A> Cons <A>(this A head, Arr <A> tail) => SeqCons <A> .New(head, SeqArray <A> .New(tail.Value));
public static Stck <Arr <A> > Sequence <A>(this Arr <Stck <A> > ta) => ta.Traverse(identity);
public Arr <A> Append(Arr <A> rhs) => rhs.InsertRange(0, this);
public static Try <Arr <B> > Sequence <A, B>(this Arr <A> ta, Func <A, Try <B> > f) => ta.Map(f).Sequence();
public int CompareTo(Arr <A> other) => default(MArr <A>).Compare(this, other);
public static IEnumerable <Arr <B> > Sequence <A, B>(this Arr <A> ta, Func <A, IEnumerable <B> > f) => ta.Map(f).Sequence();
public static TryOptionAsync <Arr <A> > Sequence <A>(this Arr <TryOptionAsync <A> > ta) => ta.Traverse(identity);
public static Aff <RT, Arr <B> > TraverseParallel <RT, A, B>(this Arr <Aff <RT, A> > ma, Func <A, B> f) where RT : struct, HasCancel <RT> => TraverseParallel <RT, A, B>(ma, f, SysInfo.DefaultAsyncSequenceParallelism);
public static Writer <MonoidW, W, Arr <B> > Traverse <MonoidW, W, A, B>(this Arr <Writer <MonoidW, W, A> > ma, Func <A, B> f) where MonoidW : struct, Monoid <W> => TraverseFast(ma, f).Map(toArray);
public static Validation <MonoidFail, Fail, Arr <A> > Sequence <MonoidFail, Fail, A>(this Arr <Validation <MonoidFail, Fail, A> > ta) where MonoidFail : struct, Monoid <Fail>, Eq <Fail> => ta.Traverse(identity);