with ada.text_io; use ada.text_io; procedure mystrings is type MyString is array(Positive range <>) of Character; -- prints string s in reverse procedure revprintln(s: MyString) is begin for i in reverse s'range loop put(s(i)); end loop; new_line; end revprintln; procedure put_line(s: mystring) is begin for i in s'range loop put(s(i)); end loop; new_line; end put_line; s: MyString := "Hi Mom!"; begin -- let's print this string in reverse revprintln(s); -- Let's print a slice put_line(s(4..7)); -- What do these print? put_line(s(2..4)); put_line(s(4..4)); put_line(s(5..4)); -- s is an array of characters s(4) := 'T'; put_line(s); end mystrings;