bot/call_later.py
def fire(callable, *args, **kwargs):
    """
    Fire a callable as a coroutine, and return it's future. The cool thing
    about this function is that (via maybeAsync) it lets you treat synchronous
    and asynchronous callables the same, which simplifies code.
    """

    return asyncio.ensure_future(maybeAsync(callable, *args))

    Fire a callable as a coroutine, and return it's future. The cool thing
    about this function is that (via maybeAsync) it lets you treat synchronous
    and asynchronous callables the same, which simplifies code.
    
Fire a callable as a coroutine, and return it's future. The cool thing
about this function is that (via maybeAsync) it lets you treat synchronous
and asynchronous callables the same, which simplifies code.
Fire a callable as a coroutine and return it ' s future . The cool thing about this function is that ( via maybeAsync ) it lets you treat synchronous and asynchronous callables the same which simplifies code .
def fire(callable, *args, **kwargs):
    return asyncio.ensure_future(maybeAsync(callable, *args))
def fire ( callable , * args , ** kwargs ) : return asyncio . ensure_future ( maybeAsync ( callable , * args ) )
Fire a callable as a coroutine, and return it's future.
Fire a callable as a coroutine and return it ' s future .
"""
    Fire a callable as a coroutine, and return it's future. The cool thing
    about this function is that (via maybeAsync) it lets you treat synchronous
    and asynchronous callables the same, which simplifies code.
    """
callable