And the script:)

Gofer new
smalltalkhubUser: 'CAR' project: 'TaskIT';
configuration;
load.

(#ConfigurationOfTaskIT asClass project version: #stable) load: 'full'

Cheers,
Doru




On Sun, Jun 29, 2014 at 11:09 AM, Tudor Girba <tu...@tudorgirba.com> wrote:

> Thanks!
>
> This works.
>
> For reference, here is the loading script:
>
>
> Cheers,
> Doru
>
>
>
>
> On Sun, Jun 29, 2014 at 9:58 AM, Santiago Bragagnolo <
> santiagobragagn...@gmail.com> wrote:
>
>> Hi Doru!
>>
>> Download the stable version ConfigurationOfTaskIt stable.
>>
>> We are going through a refactor that adds new concepts, the last code is
>> very unstable. We will try to make them transparent from the API point of
>> view, but it will add new concepts in all the aspects.
>>
>>
>>
>>
>>
>> 2014-06-29 7:48 GMT+02:00 Tudor Girba <tu...@tudorgirba.com>:
>>
>> Hi,
>>>
>>> This sounds very nice!
>>>
>>> I am trying to give it a shot, but I encounter a DNU for
>>> BlockClosure>>asTask. I have loaded the latest code from all packages, but
>>> this method is not defined.
>>>
>>> Cheers,
>>> Doru
>>>
>>>
>>> On Mon, Jun 23, 2014 at 7:32 AM, Santiago Bragagnolo <
>>> santiagobragagn...@gmail.com> wrote:
>>>
>>>> In general terms there are pharo processes.
>>>>
>>>> val := [2+2] shooitIt.
>>>>
>>>> val := [2+2] scheduleIt.
>>>>
>>>> val := [2+2] forkIt.
>>>>
>>>>
>>>>
>>>> All of this snippets will give you a future, all will be related with a
>>>> pharo process, but each process has different meaning. the firstone is a
>>>> common 2+2 block opened in a pharo process. the second one is a block
>>>> assigned to one of the  by-default two worker pharo processes from the
>>>> thread pool. ( in this case the pharo processes do not run directly the
>>>> task, but run a process that run tasks. Then, the first one is applied just
>>>> there, the second one when is its turn.
>>>>
>>>> Finally the third one will use osprocess to open the same image (so, by
>>>> now, this will work without anyproblem if you have saved the image just
>>>> before, or if you didnt change any of the code to be executed)  with the
>>>> same vm and it will give the block to be executed. In our local image,
>>>> there will be spawned a watch pharo process that will check if the third
>>>> image has finished, and deploy the future for it.
>>>>
>>>>
>>>> In the behind the scenes, each of this convenient methods is
>>>> implemented with a different kind of runner and process reification.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> 2014-06-23 0:54 GMT+02:00 kilon alios <kilon.al...@gmail.com>:
>>>>
>>>> are those OS processes or Pharo processes ?
>>>>>
>>>>>
>>>>> On Mon, Jun 23, 2014 at 1:39 AM, 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. .
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>> www.tudorgirba.com
>>>
>>> "Every thing has its own flow"
>>>
>>
>>
>
>
> --
> www.tudorgirba.com
>
> "Every thing has its own flow"
>



-- 
www.tudorgirba.com

"Every thing has its own flow"

Reply via email to