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;