Also wenn man es so sieht, dann gibt es doch NameSpaces?
Wie schon erwähnt sind nicht die Punkte in Unitnamen, auch wenn man die Entfernt mit dazu zählen kann.
Namespace anlegen, also
type MeinNamespace = record {oder class} .... end;
drumrum, um die Definition,
und im Code dann mit dem coolen WITH-DO arbeiten.
Bei C# kann quasi jeder kleine Fitzelkram in einer eigenen Datei stehen. Selbst Klassen kann ich über mehrere Dateien verteilen (partial class).
Mit Include-Dateien kann man das (bedingt) auch im Pascal, aber ich würde das nicht wirklich in großem Maßstab einsetzen wollen.