S, Philippe Marschall piše:
> On 07/01/2011 01:38 PM, Janko Mivšek wrote:
>>>> Isn't the whole point of Seaside and continuations to enable worklow
>>>> like in below example from the HPI Seaside tutorial? This code is
>>>> blocking until the call: returns, isn't that so?
>>>>
>>>> From HPI tutorial [1], chapter 5-Forms, figure 5-2 :
>>>>
>>>> (self call: self taskEditor)
>>>> ifTrue: [aTask copyFrom: self taskEditor task]
>>>>
>>>> Text bellow: "Even better, Seaside remembers the position in your code
>>>> and runs it from there again, after the called component finished. This
>>>> means, #call: blocks your current component, that is your callback
>>>> evaluation, waits for the called component to be finished, and
>>>> afterwards goes on with your callback. "
>>>
>>> Yes, but continuations don't block a Process. All they do is allow you
>>> to write code that is more readable.
>> Yes, technically it doesn't block that process because it must return
>> something to the browser, but method execution actually blocks on that
>> point.
> No. The method terminates.
It terminates from internal framework point of view. But from
application programmer point of view it blocks.
If I put Transcript messages in your example:
first := self askForFirstObject.
Transcript show: 'first answered'
second := self askForSecondObject.
Transcript show: 'second answered'
How will messages show up, immediately or waiting for answers first?
Best regards
Janko
--
Janko Mivšek
Aida/Web
Smalltalk Web Application Server
http://www.aidaweb.si