Раньше программисты сортировали так:
## Код:
```
…
for i := 0 to len(items) - 2 do
  for j := i + 1 to len(items) - 1 do
    if items[j] < items[i] then
      swap(items[i], items[j]);
…
```


Сейчас сортируют вот так:

## Код:
```
items.sort();
```


В большинстве мейнстримовых языков есть стандартные средства для организации контейнеров: вектора-массивы, списки, отображения (хеш-таблицы либо деревья), а также некоторые алгоритмы, применимые для работы с ними: сортировка, удаление дубликатов, двоичный поиск и т.д. Где-то эти механизмы встроены в язык (Python), где-то поставляются с библиотекой. Обобщённые контейнеры могут быть реализованными либо как контейнеры объектов корневого типа Object (ранняя Java), либо как generic’и (C++, поздняя Java, C#). В отличии от Ады (и отпоздних извращенийстандартной Модулы), в Обероне/КП дженериков нет, значит, по идее, должна быть какая-нибудь библиотека контейнеров, основанная на корневом типе (ANYREC).

Я некоторое время изучал встроенную документацию BlackBox, таковую не нашёл. Не нашёл даже библиотечной функции сортировки (хотя таковая есть даже в C89). Я плохо искал или таковая библиотека, по замыслу создателей, действительно не нужна?