[Seaside] Unexecuted code
Avi Bryant
avi.bryant at gmail.com
Sat Mar 18 19:32:07 UTC 2006
On Mar 18, 2006, at 8:42 AM, Zulq Alam wrote:
> Perhaps it's my lack of experience with Smalltalk but I'm
> struggling to understand what happens to code which is not executed
> after an answer.
>
> go
> parameter isNil:
> [self inform: 'You must specify a parameter.'.
> self answer].
> someObject someActionWith: parameter.
> self answer.
>
> Let's assume that "parameter" is set by some form input which in
> this case is nil. I would expect the last two statements to execute
> when "self answer" returns which, as I understand, never will.
>
> So, what happens to the last two statements? They must have been on
> the stack (or whatever Squeak/Smalltalk uses!) and I would assume
> that "self answer" pushes on to the stack. So doesn't the stack
> grow indefinitely?
No, #answer blows away the current stack - think of it like a longjmp.
Cheers,
Avi
More information about the Seaside
mailing list