On Sun, Feb 26, 2012 at 8:17 AM, Adam Chlipala <[email protected]>wrote:
> It's easy to start a server process with an arbitrary number of OS >> threads to handle client connections, and they all run in >> parallel. There is also support for periodic tasks, which run in >> their own threads, alternating between sleeping N seconds and >> running single transactions. >> >> >> That would probably be sufficient for my purposes, if not ideal. But I >> think it wouldn't take much extra effort to add some way for client code to >> signal the periodic tasks, to avoid polling, if I did take that route. Via >> channel, perhaps. >> > > I don't understand what deficiency you're pointing to, but the usual > combination of RPCs and message-passing might already do more than you're > thinking. I need latencies in milliseconds, not `N seconds`, for most of the web apps I want to build (e.g. teleop of robots). Polling is among the very worst software engineering tactics for low latency operations that effect low-frequency changes. There might be some clever way to combine RPCs and message passing to achieve what I need, but will it meet my timing concerns? > > I'd be interested to see an example demonstrating an insurmountable > client-side performance problem with an Ur/Web app running on a recent > browser version on a recent generation of machine. Right now, I'm not > convinced there's any serious issue. Yeah. I can understand that position. But the other side is, I'm not convinced there's a solution; none of your examples is performance intensive on client side. I've been in both positions, of creator and potential consumer, so I understand why people would be unwilling to run ahead with an app knowing there is a fair risk that they *might* encounter an insurmountable performance problem. Something like http://jsfiddle.net/jashkenas/CGSd5/, with a tunable number of elements in a page, might be useful to demonstrate animation of your reactive system. The latency question could be answered by animating, say, the motion of a mouse pointer through the server across frames. Regards, Dave
_______________________________________________ Ur mailing list [email protected] http://www.impredicative.com/cgi-bin/mailman/listinfo/ur
