[Seaside-dev] tasks without flow

Lukas Renggli renggli at gmail.com
Tue Dec 15 16:06:44 UTC 2009


> I totally agree that there should be a method that simply delegates,
> and maybe it should even be called #show: (particularly given legacy
> usage). However, I think there also should be a method that behaves
> like #call: but with an explicit continuation. Writing a Task without
> continuations is really wonky right now. For example, you would have
> to write:
>
> go
>  self show: MyComp1 new onAnswer: [ :a1 |
>    self show: MyComp2 new onAnswer: [ :a2 |
>      self show: MyComp3 new ] ].
>  WARenderNotification signal

Do we really want to continue supporting WATask in Seaside 3.0? They
make things so much more complicated than necessary and are rarely
useful.

> Does that make sense? Can we at least agree the method should exist
> (and worry about the name separately)?

Yes, I never disagreed.

> I suppose we could have #call:onAnswer: ? Would that be clear?
> Unclear? One disadvantage, since #call: is already used, is I don't
> know what to call the version that doesn't take a block.
> #goto:/#goto:onAnswer: ??

I like #call:onAnswer: because it does not introduce a new concept. I
guess people can understand the difference to #call: in the sense that
it does not answer a value but passes it into the block.

I don't like #goto: because it does not go anywhere and it introduces
an entirely new word. It is already difficult to explain the
difference between #show: and #call:

Lukas

-- 
Lukas Renggli
http://www.lukas-renggli.ch


More information about the seaside-dev mailing list