generic type KeyType is private; type ElementType is private; type IndexType is range <>; -- integer subscripts type ListType is array (IndexType range <>) of ElementType; with function KeyOf (Element: ElementType) return KeyType is <>; with function "<"(Left, Right: KeyType) return Boolean is <>; with procedure Put(List: ListType); -- for debugging procedure Sort_Merge_Generic(List: in out ListType); ------------------------------------------------------------------------ --| Pre: The procedure has been instantiated and List is defined --| Post: The contents of List are in order defined by "<" --| Author: Michael B. Feldman, The George Washington University --| Last Modified: January 1996 ------------------------------------------------------------------------