Две неща - не трябва да указвате размера на типа данни в списъка с параметри на процедурата/функцията и не се нуждаете от DECLARE
ключова дума. Опитайте това:
CREATE OR REPLACE PROCEDURE ReverseOf(input IN varchar2) IS
rev varchar2(50):='';
BEGIN
FOR i in reverse 1..length(input) LOOP
rev := rev||substr(input, i, 1);
END LOOP;
dbms_output.put_line(rev);
END;