
Oh -- also libevent, described at http://www.monkey.org/~provos/libevent/ : Currently, *libevent* supports */dev/pollhttp://access1.sun.com/techarticles/devpoll.html
*, *kqueue(2)http://www.freebsd.org/cgi/man.cgi?query=kqueue&apropos=0&sektion=0&format=html *, *event portshttp://developers.sun.com/solaris/articles/event_completion.html *, *select(2)*, *poll(2)* and *epoll(4)http://www.xmailserver.org/linux-patches/epoll.txt *. The internal event mechanism is completely independent of the exposed event API, and a simple update of libevent can provide new functionality without having to redesign the applications. As a result, *Libevent*allows for portable application development and provides the most scalable event notification mechanism available on an operating system. Libevent can also be used for multi-threaded applications; see Steven Grimm's explanationhttp://monkeymail.org/archives/libevent-users/2007-January/000450.html. *Libevent* should compile on Linux, *BSD, Mac OS X, Solaris and Windows.
On Fri, Dec 4, 2009 at 10:52 PM, Conal Elliott
Thanks, Matt. I see libev is available via macports. - Conal
On Fri, Dec 4, 2009 at 3:03 PM, Matt Morrow
wrote: Conal,
If I were looking to do this, I'd read the relevant parts of the libev code.
Matt
On 12/3/09, Conal Elliott
wrote: I'd like to make some FRPish toys that keep files updated to have functional relationships with other files. hinotify looks like just the sort of underlying magic I could use for efficient implementation on linux. Is there any support for mac os x? Could support be either added to hinotify or maybe inotify and a mac-friendly library be abstracted into a common Haskell interface? I'm fine with an imperative interface, since I can abstract into a functional library, which I guess would be a sort of persistent simplified FRP.
- Conal