[Pharo-project] #ifCurtailed:
Hi Am I right that the argument to #ifCurtailed: is run in a different process (like #ensure: in an exception case)? Cheers Philippe
They both behave the same way in that regard. The argument block is always executed in the owning process, unless an outside process is terminating the process. In this case it is the outside process that unwinds the stack and evaluates the unwind blocks. A long standing bug in my opinion. Lukas On 20 November 2011 15:19, Philippe Marschall <kustos@gmx.net> wrote:
Hi
Am I right that the argument to #ifCurtailed: is run in a different process (like #ensure: in an exception case)?
Cheers Philippe
-- Lukas Renggli www.lukas-renggli.ch
lukas can you open a bug entry? because we should fix this kind of problem. I will discuss it with igor. STef On Nov 20, 2011, at 3:52 PM, Lukas Renggli wrote:
They both behave the same way in that regard. The argument block is always executed in the owning process, unless an outside process is terminating the process. In this case it is the outside process that unwinds the stack and evaluates the unwind blocks. A long standing bug in my opinion.
Lukas
On 20 November 2011 15:19, Philippe Marschall <kustos@gmx.net> wrote:
Hi
Am I right that the argument to #ifCurtailed: is run in a different process (like #ensure: in an exception case)?
Cheers Philippe
-- Lukas Renggli www.lukas-renggli.ch
http://code.google.com/p/pharo/issues/detail?id=5003 On 20 November 2011 17:42, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
lukas can you open a bug entry? because we should fix this kind of problem. I will discuss it with igor.
STef
On Nov 20, 2011, at 3:52 PM, Lukas Renggli wrote:
They both behave the same way in that regard. The argument block is always executed in the owning process, unless an outside process is terminating the process. In this case it is the outside process that unwinds the stack and evaluates the unwind blocks. A long standing bug in my opinion.
Lukas
On 20 November 2011 15:19, Philippe Marschall <kustos@gmx.net> wrote:
Hi
Am I right that the argument to #ifCurtailed: is run in a different process (like #ensure: in an exception case)?
Cheers Philippe
-- Lukas Renggli www.lukas-renggli.ch
-- Lukas Renggli www.lukas-renggli.ch
[tx] ensure: [tx] On Nov 20, 2011, at 8:53 PM, Lukas Renggli wrote:
http://code.google.com/p/pharo/issues/detail?id=5003
On 20 November 2011 17:42, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
lukas can you open a bug entry? because we should fix this kind of problem. I will discuss it with igor.
STef
On Nov 20, 2011, at 3:52 PM, Lukas Renggli wrote:
They both behave the same way in that regard. The argument block is always executed in the owning process, unless an outside process is terminating the process. In this case it is the outside process that unwinds the stack and evaluates the unwind blocks. A long standing bug in my opinion.
Lukas
On 20 November 2011 15:19, Philippe Marschall <kustos@gmx.net> wrote:
Hi
Am I right that the argument to #ifCurtailed: is run in a different process (like #ensure: in an exception case)?
Cheers Philippe
-- Lukas Renggli www.lukas-renggli.ch
-- Lukas Renggli www.lukas-renggli.ch
On 20 November 2011 16:19, Philippe Marschall <kustos@gmx.net> wrote:
Hi
Am I right that the argument to #ifCurtailed: is run in a different process (like #ensure: in an exception case)?
not necessary. A non-local returns are also trapped by it: [ ^ xx ] ifCurtailed: [ ... ]
Cheers Philippe
-- Best regards, Igor Stasenko.
participants (4)
-
Igor Stasenko -
Lukas Renggli -
Philippe Marschall -
Stéphane Ducasse