Greenlets for GObject Introspection - making non-blocking GNOME code a pleasure to write and read