
{{alias}}( arr, fcn[, thisArg] )
    Applies a function to each element in an array and assigns the result to an
    element in a new array, iterating from right to left.

    The applied function is provided the following arguments:

    - value: array element.
    - index: element index.
    - arr: input array.

    The returned output array always has a "generic" data type. For example, if
    provided an array-like object, the function returns a generic array. If
    provided an ndarray, the function returns an ndarray having a "generic" data
    type.

    Parameters
    ----------
    arr: ArrayLikeObject|ndarray
        Input array.

    fcn: Function
        Function to apply.

    thisArg: any (optional)
        Input function context.

    Returns
    -------
    out: Array|ndarray
        Output array.

    Examples
    --------
    // array-like object:
    > var f = {{alias:@stdlib/utils/nary-function}}( {{alias:@stdlib/math/base/special/abs}}, 1 );
    > var arr = [ -1, -2, -3, -4, -5, -6 ];
    > var out = {{alias}}( arr, f )
    [ 1, 2, 3, 4, 5, 6 ]

    // ndarray:
    > arr = {{alias:@stdlib/ndarray/array}}( arr, { 'shape': [ 2, 3 ] } );
    > out = {{alias}}( arr, f );
    > var v = out.get( 1, 1 )
    5


{{alias}}.assign( arr, out, fcn[, thisArg] )
    Applies a function to each element in an array and assigns the result to an
    element in an output array, iterating from right to left.

    The applied function is provided the following arguments:

    - value: array element.
    - index: element index.
    - arr: input array.

    Input and output arrays must be either both array-like objects or both
    ndarray-like objects.

    If input and output arrays are array-like objects, the arrays must have the
    same number of elements.

    If input and output arrays are both ndarray-like objects, the arrays *must*
    be broadcast compatible.

    Parameters
    ----------
    arr: ArrayLikeObject|ndarray
        Input array.

    out: ArrayLikeObject|ndarray
        Output array.

    fcn: Function
        Function to apply.

    thisArg: any (optional)
        Input function context.

    Returns
    -------
    out: Array|ndarray
        Output array.

    Examples
    --------
    // array-like object:
    > var f = {{alias:@stdlib/utils/nary-function}}( {{alias:@stdlib/math/base/special/abs}}, 1 );
    > var arr = [ -1, -2, -3, -4, -5, -6 ];
    > var out = [ 0, 0, 0, 0, 0, 0 ];
    > {{alias}}.assign( arr, out, f );
    > out
    [ 1, 2, 3, 4, 5, 6 ]

    // ndarray:
    > var opts = { 'shape': [ 2, 3 ] };
    > arr = {{alias:@stdlib/ndarray/array}}( arr, opts );
    > out = {{alias:@stdlib/ndarray/array}}( [ 0, 0, 0, 0, 0, 0 ], opts );
    > {{alias}}.assign( arr, out, f );
    > var v = out.get( 1, 1 )
    5

    See Also
    --------

