-- non_generic_sort_package.ada package NON_GENERIC_SORT_PACKAGE is type INT_ARRAY is array ( INTEGER range <> ) of INTEGER ; procedure NNSORT ( ARR1 : in out INT_ARRAY ) ; end NON_GENERIC_SORT_PACKAGE ; package body NON_GENERIC_SORT_PACKAGE is procedure NNSORT ( ARR1 : in out INT_ARRAY ) is TEMP : INTEGER ; begin for I in ARR1'FIRST .. ARR1'LAST - 1 loop for J in I + 1 .. ARR1'LAST loop -- This is the classic compare and -- interchange at the heart of all sorts if ARR1 ( I ) > ARR1 ( J ) then TEMP := ARR1 ( I ) ; ARR1 ( I ) := ARR1 ( J ) ; ARR1 ( J ) := TEMP ; end if ; -- end of compare and interchange end loop ; end loop ; end NNSORT ; end NON_GENERIC_SORT_PACKAGE ;