Looks really cool!  Everything’s an object :)

Does it run in older images? How hard, do you reckon, would it be to backport 
TaskIT to e.g. Pharo 1.4?

Cheers,
Max


On 23.06.2014, at 00:39, Santiago Bragagnolo <santiagobragagn...@gmail.com> 
wrote:

> 
> Hi all, im glad to announce TaskIT. You may already knew about, after all 
> it's not confidential ;) and it has documentation on-going since some months 
> ago. 
> 
> Task IT is package that provides a cool way to deal with processes. Even when 
> this version is stable, it still in design and we want to make it consistent 
> and powerfull. 
> 
> It counts with a chapter in pharo enterprise book and some cool tests. 
> 
> We have moved the main distribution repo to CAR 
> 
> http://smalltalkhub.com/#!/~CAR/TaskIT/
> 
> 
> The main easy things to do with this revision are: 
> 
> " closures "
> val := [ 2+2 ] shootIt.
> val isKindOf: TKTFuture.
> val onSuccess: [: rslt | rslt == 4 ] "async"
> val value == 4. " sync "
> 
> rslt := [ 2+2 ] shootIt asResult. 
> rslt == 4 "sync on demand"
> 
> " objects "
> 
> val := 2 paralellize + 2.
> val == 4 "sync on demand"
> 
> 
> " staying in tune "
> 
> val := [ "some task" ] shootIt asStickyReference. 
> 
> val := nil. 
> " sticky means that if this future is taken by the GC, it will kill the 
> process"
> 
> 
> 
> " looping  "
> 
> 
> val := server paralellize looping serveOnce: anyParameter asStickyReference. 
> 
> "this will execute in a new process, in a loop, server serveOnce: 
> anyParameter."
> 
> You can stop it by doing
> val:= nil. 
> 
> "or using a disgusting magic variable, for that check the samples :). But do 
> not rely on that kind of things, because it will not be supported "
> 
> 
> 
> For more advanced and cool usages, check the Doc. 
> 
> 
> FAQ: 
> 
> 1- Yes, the "sync" on demand is implemented with a proxy and a become. 
> 2- Yes, we are changing the API of the processes that persist in time. 
> 
> CREDITS 
>   All CAR team in general was great inspiration, particularly, Guille Polito 
> full operational commiter and  of course is always a good idea to discuss 
> with him,  Nick Papoylias, is also great to discuss with him. Luc, Noury, 
> Jannik: several ideas are discussed with them as well, and they always gave 
> me support.
> 
> and from RMOD Esteban Lorenzano, also discussing and proposing.
> 
> Thanks all :).
> 
> 
>  OTHERS:
> If you want to go to the darkside (dark because is not documented yet, but in 
> the case of PoolIT, that it has some doc ) you can also add to your combo: 
> ActIT: a simple Actor extention for taskit.
> ForkIT: an extention that runs blocks in background image (it adds a nice 
> button to the test runner, letting you run all your tests in a background 
> image and installing the results after the execution) 
> PoolIT: it adds a pool of workers, it consumes tasks and ensure you a limited 
> amount of threads. 
> PlanIT: a basic and not yet full developed algebra for composing processes. 
> 
> 
> 
> I encourage you to use it, it is being used in PhaROS since a lot  of time. 
> And please any bug and enhancements, you can contact us. Since we are working 
> on the next version is a good time to define what features are really needed. 
> 
> 
> Salut. 
> 
> 
> Santiago. .
> 
> 
> 
> 
> 
> 

Reply via email to