<div class="gmail_quote">On Sun, Feb 26, 2012 at 8:17 AM, Adam Chlipala <span dir="ltr"><<a href="mailto:adamc@impredicative.com">adamc@impredicative.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">   It's easy to start a server process with an arbitrary number of OS<br>
    threads to handle client connections, and they all run in<br>
    parallel.  There is also support for periodic tasks, which run in<br>
    their own threads, alternating between sleeping N seconds and<br>
    running single transactions.<br>
<br>
<br>
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.<br>

</blockquote>
<br></div>
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.</blockquote><div><br></div><div>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?</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br></div>
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.</blockquote>
<div><br></div><div>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.</div>
<div><br></div><div>Something like <a href="http://jsfiddle.net/jashkenas/CGSd5/">http://jsfiddle.net/jashkenas/CGSd5/</a>, 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.</div>
<div><br></div><div>Regards,</div><div><br></div><div>Dave</div></div>