Daniel Fagerstrom wrote:
Reinhard Poetz wrote:

Daniel Fagerstrom wrote:


<snip/>

A question here is what flowscript functions that should be exported from a block. I would prefer to explictly enumerate the functions and possibly whole scripts that are exported rather than exporting everything in the map:flow sections.



Maybe we can work with an attribute in the script declaration:

<map:script src="public-flowscript.js" public="true"/>

(Don't know if this is technically possible because this requires that when we call a function from we must know where it is defined).


Or maybe more explicit:

<map:script src="public-flowscript.js" public="fun1 fun2 fun3"/>

ok


Then it is explicit what is exported and it is also easy for the framework to find the functions that should be usable from outside.

<snip/>

Maybe I'm missing something, but a function call always implictly creates a continuation. The function call can be seen as: create a continuation, save it as a special place in the execution stack, goto the first instruction in called function, execute the instructions in the function. Then the return means: fetch the saved continuation in the execution stack and call it.

The explicitly created continuations, gives you a way to "return" to positions in the program execution other than the position after a function call.

So I'm not getting why we should need to create the continuation1 and resuming it for simulating function call semantics. This is what the function call does by it self. Or are there other mechanisms involved that I'm missing?

hmmm. sounds reasonable

A somewhat unrelated thing that we have to think about is the web continuations created in the block, do we need to shield the web continuations created in the block or not?

shielded from what? The user should be able to resume a continuation created by a called block. (I have the sense that I haven't understood your last paragraph completly ...)



-- Reinhard

Reply via email to