>> 
> 
> Even if everything runs in one thread it doesn’t mean that you need to block 
> something.
? 
You run in one thread then either it runs or it does not :)
When loading Moose in one process it will load model and not process UI. I see 
that you do not really grasp concurrency. 


> And I know that example with Nautilus or even with test runner may be to 
> hard. 
> 
> Let’s take moose for example. While it is importing a model everything 
> freezes. Is there a reason for that? I don’t see any.

It just depends if you want to let the user do something in parallel or not. 
For moose this is easy to fork the loading. 

Now for pharo since what you load can modify the running system this is a 
different story.

> In my opinion the problem is that we are not used to run non-instant 
> operations in a separate process,

No :)
The problem is that we do not have a nice way to protect the system from being 
executed and modified at the same 
time. Imagine that we would load the code in a separate structure in the 
parallel process and that once the code is loaded
but not installed you have a fast way to install it. Then we could do loading 
on the side. 
You see the key aspect. 

Your UI in objective-C were not done to load Objective-C code that could modify 
the objective-C runtime!!!
So if you want to build a simple user interface loading videos you can do it in 
a parallel process just using fork 
and paying a bit of attention. 

> because I do a lot of mistakes like this too.
> 
> uko
> 
>> 
>> 
>> 
>> -----
>> Cheers,
>> Sean
>> --
>> View this message in context: 
>> http://forum.world.st/Responsible-development-tp4726686p4726763.html
>> Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
>> 
> 
> 


Reply via email to