This is the mail archive of the guile@cygnus.com mailing list for the guile project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Mikael> Thus, the basic idea is that all I/O blocking is "channeled" Mikael> through scm_internal_select (). I think this is a good idea. It is important to expose the event loop not only at the Scheme level, but also at the C level. That way it will be easy to plug a library like ILU (or any GUI library) into the Guile event system. The best libraries I've seen provide an event loop by default, but also allow you to replace their event loop with a third party one. For instance, ILU does this. If this is achievable, it should be done, as it makes it much simpler to stick all the different libraries together -- you can pick the event interface that is most comfortable, or you can even work with a library that doesn't allow its event loop to be replaced. Tk (for one) also provides delays and idle events in its event handler. I don't know if this is worth supporting or not. In general Tk (well, Tcl, now -- the event loop got moved) does a nice job here at the C level. The event loop is reentrant (of course -- and this is another requirement), and you can ask that a single event be handled. Tom -- tromey@cygnus.com Member, League for Programming Freedom