On Sat, May 10, 2008 at 4:58 PM, John Mettraux <[EMAIL PROTECTED]> wrote: > On Fri, May 9, 2008 at 8:46 PM, Tomaso Tosolini > > > My idea was that such working mecha should keep the exec tree quite > > flat, or if not, at least his deepness is due only to the process > definition > > schema, not to the workitem process execution "real path". > > It would be a good exercise to implement your suggestions (maybe a > fork of Ruote). > > One technique to avoid such fat stacks would be to use "tail > recursion" ( http://en.wikipedia.org/wiki/Tail_recursion ), it's not > implemented in Ruote to keep things simple (and it's not implemented > in Ruby itself neither (though I don't know for 1.9 / yarv)).
Hello Tomaso, I've tried (in a branch) to implement some tailish improvement : http://github.com/jmettraux/ruote/commit/aa45f4935f5d69199cf9a7e683a4d455f4d1e5de 5% faster it seems. Thinking about merging that in the master branch. Maybe you have other suggestions. Back to your idea : > My idea about the state-transition working mode was to build things such > that the "goto" expressions, insead of transferring the control to the next > state using the apply method, call the state-transition's reply method and > then the dispatch to the next state was performed by the state-transition > calling the appy method of the designed next state, but in this case we are > doing this at the state-transition context, now within the current state's > context. I have this impression, that the <step> expression does just that. Maybe your scenario relies on a case where a "state" is used once and only once. Thanks for the feedback so far, cheers, -- John Mettraux - http://jmettraux.wordpress.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "OpenWFEru dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/openwferu-dev?hl=en -~----------~----~----~----~------~----~------~--~---
