-- heap_sort_2.ads generic type ELEMENT_TYPE is private ; -- simple objects, records or arrays type INDEX_TYPE is ( <> ) ; -- any discrete type type ARRAY_TYPE is array ( INDEX_TYPE range <> ) of ELEMENT_TYPE ; with function ">" ( SMALL , LARGE : ELEMENT_TYPE ) return BOOLEAN is <> ; procedure HEAP_SORT_2 ( ARRAY_VAL : in out ARRAY_TYPE ; WC , WE : in out INTEGER ) ;