Le 18 mars 2014 � 19:50, Eliot Miranda a �crit :

On Tue, Mar 18, 2014 at 10:10 AM, Christophe Demarey <Christophe.Demarey@inria.fr> wrote:
Why arguments should be read only?
They are just temporary variables with an initial value.

Read the blue book.  It was a decision of the language designers to forbid assignment to arguments to allow debugging.  The assignment to block arguments is a side-effect of the old BlockContext implementation of blocks where block arguments were mapped onto temporary variables of the home context.  It is an anachronism and should be forbidden also.

Thank you for the explanation.
I'm just curious why it is so difficult to implement a debugger if arguments are assignable?
If you need to restart the execution of a method, and so you need to get the initial value of the argument, I understand you cannot find the value anymore in the method context but it is available in the caller context, no?
As I never implemented a debugger, I cannot figure out the difficulties.