-
Notifications
You must be signed in to change notification settings - Fork 52
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
invoke control operator proposal #273
Comments
I'll start with some nonsense :) For the first question, I'm not following. Isn't this always guaranteed when we place something in
For the second question, just throwing out random thoughts, won't this depend on what
|
Two problems here:
|
It makes sense to always inline an |
Thinking about the following syntax for
for a component:
Things to note:
This, in general, is probably not a good idea because groups have a |
Is this supposed to be a generalized Also, a naive question: Would this support functions in Dahlia to be lowered to FuTIL? I'm imagining this as a function that would lower to a component, and be invoked as described above. I'm going to post a new issue soon that better illustrates these thoughts, since I did some thinking about writing |
That's just a random example I was writing down, but yes, it is just an exponent function. Also, yes, the goal is for
Cool. Looking forward to it. |
Love it! This looks good. I think it's a good question about whether the invocation should exist in the structure side, i.e., in a group. Although I think you're right that this is not the way to go, the argument for it would probably be that, this way, all component "instantiations" still exist in the structure. So if you want to know which other components get used in the definition of this one, you only have to look there—rather than at both the structure and at My intuition says no guards in |
Duplicating the control flow of an invoke statement duplicates the control logic. For example, if a component uses control logic of size |
Implemented in #300. |
This proposal outlines a new control operator called
invoke
that runs a component to completion using the component'sgo
/done
interface.Given a component:
We can
invoke
it using:Questions
invoke
get compiled? It needs to make sure that the component is only run once.invoke
get inlined?Answering the first two questions will affect how the third one is answered. The more "magic" is involved in compiling an
invoke
statement, the more complicated inlining becomes.The text was updated successfully, but these errors were encountered: