Утро доброе, уважаемые форумчане!

Вот, в поисках чего-нибудь отличного от общепринятых языков и стандартов встретился с Компонентным Паскалем. Тут же почувствовал ностальгию по красоте кода на Паскале в 1 семестре... И тут же стукнули тяжелые мысли о страшном расположении скобок в С++, позже выработалось паскалеподобное написание, но появилось оно слишком поздно (а курсовая уже по большей части написана).

На каникулы есть пара заданий... Хотелось бы для общего развития попробовать написать их на компонентном Паскале.
Но тут встают вопросы:

1)В С++ у меня была собственная реализация списка. Он реализован как набор шаблонных классов, что очень удобно - просто подставил нужный тип данных - вот список, заполненный требуемыми данными; в функцию сортировки передал в качестве аргумента функцию сравнения элементов - и всё работает. Весьма мощное средство.

Но вот вопрос. Насколько мне известно, в Компонентном Паскале нет шаблонов. (Надеюсь, передача функций как аргументов есть)
Каким же образом реализовать такой универсальный список?


И ещё вопрос. Часто в прикладных программах нужны таблицы. Наличие их в библиотеке Qt для С++ весьма приятно....
Как с этим обстоят дела в BlackBox? (можно ли, например, вручную заполнять таблицы, используемые для работы с базами данных , безо всякой привязки к конкретным СУБД - то есть "выдёргивать " таблицы из всего контекста их стандартного использования?).


я не прошу подробного объяснения - увы, с КП пока знаком весьма поверхностно, но хотя бы общие соображения на этот счёт. (ссылки на документацию, аналоги средств С++).

Заранее спасибо)