<br><br><div class="gmail_quote">On Fri, Oct 14, 2011 at 3:07 AM, Ertugrul Soeylemez <span dir="ltr"><<a href="mailto:es@ertes.de">es@ertes.de</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">It's not about the laws, it's about losing state.</div></blockquote><div><br></div><div>I think you should not accumulate state; the abstraction gives me a fresh arrow each instant, conceptually and pragmatically. But it would not be difficult to create an abstraction specifically for dynamic, stateful accumulators. </div>
<div><br></div><div>class (Arrow a) => ArrowAppS a where</div><div> apps :: st -> a (a (x,st) (y,st), x) y</div><div><br></div><div>instance ArrowAppS Auto where</div><div> apps s0 = Auto $ \ (f,x) -></div><div>
let ((y,sf),f') = runAuto f (x,s0) in</div><div> (y,apps sf) </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>
> The reactive model I'm developing, Reactive Demand Programming, is<br>
> actually anti-causal: behavior at any given instant may depend only<br>
> upon its present and future inputs (anticipation), but never the<br>
> past. State is treated as an external service, part of an abstract<br>
> machine, orchestration of registers or a database. I think this setup<br>
> works better than FRP, e.g. for controlling space-leaks, supporting<br>
> smooth transitions and upgrades of dynamic behavior, modeling the app<br>
> as a whole as dynamic, and orthogonal persistence.<br>
<br>
</div>I would be very interested in such a model. Are there any resources<br>
online?<br></blockquote><div><br></div><div>Just my blog. Here are a few select articles:</div><div>* <a href="http://awelonblue.wordpress.com/2011/05/21/comparing-frp-to-rdp/">http://awelonblue.wordpress.com/2011/05/21/comparing-frp-to-rdp/</a></div>
<div>* <a href="http://awelonblue.wordpress.com/2011/05/28/anticipation-in-rdp/">http://awelonblue.wordpress.com/2011/05/28/anticipation-in-rdp/</a></div><div>* <a href="http://awelonblue.wordpress.com/2011/08/26/demand-monitors-heart-and-soul-rdp/">http://awelonblue.wordpress.com/2011/08/26/demand-monitors-heart-and-soul-rdp/</a> </div>
<div><br></div><div>My code is on github, but I still break it on a regular basis.</div><div><br></div><div>Regards,</div><div><br></div><div>Dave</div><div><br></div></div>