Enviar tarefas assíncronas para executar em loop em outro encadeamento

Como posso inserir assincronamente tarefas para executar em umasyncio loop de evento em execução em outro segmento?

Minha motivação é oferecer suporte a cargas de trabalho assíncronas interativas no intérprete. Não consigo bloquear o thread REPL principal.

Exemplo

Meu entendimento atual falho diz que o seguinte deve funcionar. Por que não? Qual é a melhor maneira de atingir o objetivo acima?

import asyncio
from threading import Thread

loop = asyncio.new_event_loop()

def f(loop):
    asyncio.set_event_loop(loop)
    loop.run_forever()

t = Thread(target=f, args=(loop,))
t.start()    

@asyncio.coroutine
def g():
    yield from asyncio.sleep(1)
    print('Hello, world!')

asyncio.async(g(), loop=loop)

questionAnswers(1)

yourAnswerToTheQuestion