Вам понадобится более новая версия Delphi, если вы хотите настоящую вещь.
Тем не менее, у Паскаля всегда была похожая область видимости, но для этого вы должны (с небольшим количеством фантазии) увидеть юнит как статический финальный класс.
Открытые функции и переменные определяются в разделе интерфейса, а личные вещи - в разделе реализации.
Все они более или менее эквивалентны переменным класса и методам класса.
Если вы называете свой модуль loader.pas и определяете функцию «init» в разделе интерфейса, вы можете даже вызвать ее, как если бы она была функцией класса: loader.init ().
Разделы инициализации и завершения являются эквивалентом конструктора класса и деструктора класса.
То, что я описал выше, имеет смысл с Turbo Plascal до Delphi 2007 (я думаю, переменные класса были введены в d2009). В общем, я бы посоветовал просто получить более новую версию Delphi.