> DummyProcedure_1 := proc() > lprint('Inside procedure 1'); > lprint('The value of u before assignment: ', u); > u := -8000; > lprint('The value of u after assignment: ', u); > end: > DummyProcedure_2 := proc() > lprint('Inside procedure 2'); > lprint('The value of u before assignment: ', u); > u := 999; > lprint('The value of u after assignment: ', u); > end:Note that each time we call either of the above procedures, the variable u has no value associated with it initially. Because it does not have a value, Darwin treats u as a name in the lprint command before the assignment of either -8000 or 999 to u. No matter which order or how many times we invoke the dummy_procedures, their local copies of the variable u remain unaffected by the assignments done to the other.
> DummyProcedure_1(); Inside procedure 1 The value of u before assignment: u The value of u after assignment: -8000 > DummyProcedure_2(); Inside procedure 2 The value of u before assignment: u The value of u after assignment: 999 > DummyProcedure_1(); Inside procedure 1 The value of u before assignment: u The value of u after assignment: -8000