Hi Donal,

there were several cases in the data where I could not make sense of the
decision to use sub-workflows. Those can be attributed to list handling,
then.

I do not 100% understand the example below. I need to experiment myself
with it using the workbench.

thanks for the response.
pinar


> On 18/11/2013 14:48, Stian Soiland-Reyes wrote:
>> For instance, if there are iterations over the nested workflow, now
>> you would have iterations over the immediate first processors instead
>> (and their downstreams) - which might in some cases require you to
>> reconfigure List Handling on every step of the workflow.
>>
>> Many nested workflows are used with iterations both inside and outside
>> the nested workflows - in which case there are several List Handling
>> iteration patterns which can't easily be expressed on a merged
>> workflow, say outer Dot product and inner Cross product.
>
> Another cast that I hit recently relates to the ways in which merges
> work; if you want to form (apologies for pseudo-SML syntax):
>
>    'a list • 'b list • 'c list -> ('a • 'b • 'c) list
>
> without using a beanshell, you end up using a merge inside a nested
> workflow, where the depth of the inputs to the nested workflow are 0 but
> the values being fed in are lists. Remove the nesting and you get a
> *completely* different operation which has an outer list which has the
> three input lists as sub-lists; the outer list is working like a
> poor-mans tuple. (FWIW, in my particular case, the three values are
> actually derived from a single input by applications of — decidedly
> non-trivial — functions, so I can guarantee that doing a dot product
> works.) Changing the workflow to deal with the fact that the merges now
> fail would involve introducing an entirely new processor. (I also
> suspect that we perhaps ought to flag up any workflow that has a merge
> of a value of depth greater than 0 as being potentially problematic; the
> “poor-mans tuple” is a categorical canary in the type mine.)
>
> I also use nested workflows for looping control and the workflow
> concerned would *not* work without it. But Stian's already mentioned that.
>
> The long and short of it is this: nested workflows are a critical
> feature of Taverna. You can't unnest in all but the most trivial of
> cases; if you want to understand anything complicated, you'll have to
> deal with directly nesting. :-)
>
> Donal.
> ------------------------------------------------------------------------------
> Shape the Mobile Experience: Free Subscription
> Software experts and developers: Be at the forefront of tech innovation.
> Intel(R) Software Adrenaline delivers strategic insight and game-changing
> conversations that shape the rapidly evolving mobile landscape. Sign up
> now.
> http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk_______________________________________________
> taverna-users mailing list
> [email protected]
> [email protected]
> Web site: http://www.taverna.org.uk
> Mailing lists: http://www.taverna.org.uk/about/contact-us/
>


-- 
regards
pinar

------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing 
conversations that shape the rapidly evolving mobile landscape. Sign up now. 
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
taverna-users mailing list
[email protected]
[email protected]
Web site: http://www.taverna.org.uk
Mailing lists: http://www.taverna.org.uk/about/contact-us/

Reply via email to