Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Quest] Execution order #15

Open
gregsn opened this issue Jun 22, 2020 · 1 comment
Open

[Quest] Execution order #15

gregsn opened this issue Jun 22, 2020 · 1 comment
Labels
quest wrapItUp can we have this soon? please express your concerns

Comments

@gregsn
Copy link
Member

gregsn commented Jun 22, 2020

It's still not possible to express the execution order explicitly.

For descriptive patches (e.g. operating on immutable data) this is fine; especially when there is also no other side effect (write to disk & later on read back from that file)

But there are patches that come with

  • imperative operation calls on mutable types
  • side effects
  • s & r nodes
    that need to ordered.

There are hacks, which work in certain cases:
image

This patch makes sure that CallingYouWhenInGoodMood and therefore SetData gets called before reading the Data back.

And that's the cleanest workaround I was able to come up with up to now. (I have seen worse workarounds that is) This situation clearly has to be resolved.

Note that the approach above only works if the part that I want to execute first (in this case the region) has an output that can be connected to the If-region. The hack is based on the idea that data-flow dependencies make the compiler execute the region before the Data node. Without the output on the region, this wouldn't be possible.

@gregsn
Copy link
Member Author

gregsn commented Jun 29, 2020

All proposals should address Fragments of Process Nodes (as those are the to be order calls when talking about these kinds of nodes).

Those proposals are allowed to state: "It's not possible to order individual fragments with this proposal. You only can order all fragments of a process node with respect to other nodes." Or anything along these lines. But they should address the issue in some way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
quest wrapItUp can we have this soon? please express your concerns
Projects
None yet
Development

No branches or pull requests

1 participant