Hi Phillip,<br>What other peak libraries need to be updated for trellis to work?<br><br>I just checked out the SVN, tried to run the tests and it started complaining about something from the peak.util <br><br>Peter<br><br>
<div class="gmail_quote">On Nov 28, 2007 5:10 AM, Phillip J. Eby &lt;<a href="mailto:pje@telecommunity.com">pje@telecommunity.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
FYI, folks, if you&#39;re doing development against the SVN version of<br>the Trellis, please be aware that a couple of major changes in<br>semantics are coming soon, like in the next day or so.<br><br>A quick summary of the major changes:
<br><br>* Rules can now make changes to other cells<br><br>* Rules and modifiers can see the immediate effects of their changes<br>(but still cannot see the calculated effects)<br><br>* @trellis.action is no more: you will have to switch to @rule or
<br>@observer instead (where @observer is for communicating with<br>non-trellis software and is not allowed to make changes)<br><br>* non-@observer rules can be run more than once, and so must either<br>be safe to re-run, or log their changes so the trellis can undo them
<br><br>* recalculation errors roll back all changes to the trellis<br><br>* circular rules that would&#39;ve led to an infinite loop can now be<br>detected, with a complete report of the rules involved<br><br>* @task rules now require an EventLoop to run, and they are no longer
<br>guaranteed to see all changes to the trellis. &nbsp;In particular, they<br>can no longer see receiver or discrete values, because those cells<br>will reset before the eventloop can run. &nbsp;On the other hand, because<br>of this change, it is now potentially possible for code in one thread
<br>to trigger the resumption of a task running in another thread. &nbsp;(The<br>new algorithm has hooks for multi-thread locking, but it is not yet<br>implemented.)<br><br>This isn&#39;t a complete list of changes, but I believe it covers most
<br>of the big things. &nbsp;I&#39;m bumping the version from 0.5b2dev to 0.6a1dev<br>to reflect the differences. &nbsp;There will need to be some major<br>documentation overhauls in the near future, as I have done almost no<br>doc updates for the above, or to add information about the new STM
<br>(Software Transactional Memory) and recalculation controller objects<br>and their APIs, or how to implement advanced data structures and<br>specialized cell types under the new regime.<br><br>Last, but far from least, my initial checkin isn&#39;t going to support
<br>undo for List, Dict, Set, etc., and so your code may act funny if a<br>rule that modifies one of those structures needs to be undone due to<br>an ordering issue.<br><br>Hopefully, we&#39;ll have some stability on the trunk relatively soon,
<br>but the docs may take longer. &nbsp;With luck -- and especially testing --<br>perhaps we will have a solid 0.6 beta by year end. &nbsp;If you&#39;d like to<br>help, please try your existing Trellis code bases against the new<br>
trunk once I announce the first checkin, and let me know of any<br>issues, quirks, glitches, or oddities you may run into. &nbsp;Thanks!<br><br>_______________________________________________<br>PEAK mailing list<br><a href="mailto:PEAK@eby-sarna.com">
PEAK@eby-sarna.com</a><br><a href="http://www.eby-sarna.com/mailman/listinfo/peak" target="_blank">http://www.eby-sarna.com/mailman/listinfo/peak</a><br></blockquote></div><br><br clear="all"><br>-- <br>There is NO FATE, we are the creators.