src/basilisp/lang/runtime.py
def apply(f, args):
    """Apply function f to the arguments provided.
    The last argument must always be coercible to a Seq. Intermediate
    arguments are not modified.
    For example:
        (apply max [1 2 3])   ;=> 3
        (apply max 4 [1 2 3]) ;=> 4"""
    final = list(args[:-1])

    try:
        last = args[-1]
    except TypeError as e:
        logger.debug("Ignored %s: %s", type(e).__name__, e)

    s = to_seq(last)
    if s is not None:
        final.extend(s)

    return f(*final)
def apply(f, args):
    """Apply function f to the arguments provided.
    The last argument must always be coercible to a Seq. Intermediate
    arguments are not modified.
    For example:
        (apply max [1 2 3])   ;=> 3
        (apply max 4 [1 2 3]) ;=> 4"""
    final = list(args[:-1])

    try:
        last = args[-1]
    except TypeError as e:
        logger.debug("Ignored %s: %s", type(e).__name__, e)

    s = to_seq(last)
    if s is not None:
        final.extend(s)

    return f(*final)
def apply ( f , args ) : final = list ( args [ : - 1 ] ) try : last = args [ - 1 ] except TypeError as e : logger . debug ( "Ignored %s: %s" , type ( e ) . __name__ , e ) s = to_seq ( last ) if s is not None : final . extend ( s ) return f ( * final )
Apply function f to the arguments provided.
    The last argument must always be coercible to a Seq. Intermediate
    arguments are not modified.
    For example:
        (apply max [1 2 3])   ;=> 3
        (apply max 4 [1 2 3]) ;=> 4
Apply function f to the arguments provided . The last argument must always be coercible to a Seq . Intermediate arguments are not modified . For example : ( apply max [ 1 2 3 ] ) ; = > 3 ( apply max 4 [ 1 2 3 ] ) ; = > 4