On the other hand, the nice thing about promises in tulip is that they are generic enough that you can hook up an existing async library, so long as it also deals with promises - even if they're a different kind of promise. For example, callback-based native APIs exposed by the OS or its standard libraries.