On Nov 26, 2015, at 11:44 AM, Philipp Stephani <p.stephani2@gmail.com> wrote:

IOW, such arbitrary callbacks need to run in the C land, and
communicate with Lisp via timers.  In the future, we might add
facilities that would allow a module register a file descriptor
through which events could flow into the Emacs event queue.  But that
is not yet available, and I'm not sure we'd want to allow it.

I agree. 

It seems desirable to me to have a function 

void send_event( char const * type );

which would just queue a special type of event that could be dispatched on the elisp side through the normal even handling.  Though I admit I don’t really understand how it all works.

-Ivan