with Ada.Integer_Text_IO; use Ada.Integer_Text_IO; with Ada.Text_IO; use Ada.Text_IO; -- illustrates value semantics, not reference semantics procedure tryArrays3 is type MyArray is array (1 .. 5) of Integer; a: MyArray := (11, 12, 13, 14, 15); b: MyArray; begin -- Array assignment b := a; a(1) := 99; -- Change a but not b for i in a'range loop put(a(i), 3); end loop; new_line; for i in b'range loop put(b(i), 3); end loop; new_line; end tryArrays3; -- SAMPLE RUN 99 12 13 14 15 11 12 13 14 15