Для этой задачи - ограничить импорт - вовсе не обязательно менять язык. Достаточно инструментального средства, которое будет проверять соответствие (откомпилированного) модуля М вашим правилам. Если очень надо - можно эту проверку сделать в компоновщике-загрузчике.
Но, кмк, вводить отдельный scope для подсистем - не вижу практического смысла и выгоды. Этак можно до friend договориться и раздуть компилятор, замучив компиляторщиков проверками.

> -- Цитата:
> 1) Понятие "подсистема" несколько размыто и в сущности ничего из себя не представляет в языке КП.
Так и есть - в КП его нет

> -- Цитата:
> В том виде как оно есть это скорее попытка сделать "костыль" при переходе от плоской структуры ФС ОберонОС
Почему костыль? Оберон и КП вообще ничего не говорят о файлах. Файлы появляются как соглашение системы-среды ББ.

> -- Цитата:
> 3) Стоит ли вообще привязывать механизм хранения модулей и ресурсов (организация файлов в ФС) к этим понятиям?

Как я раньше писал, совсем их невозможно отвязать; однако привязка должна быть в одну сторону: определение модуля не должно ссылаться ни на какие файлы/каталоги. Модуль - это текст, который удовлетворяет грамматике КП и его семантическим правилам. Он может быть написан на салфетке или карандашом прямо на столе. Однако в системе должны быть приняты соглашения о том, какие файлы соответствуют модулю (if any), и где они расположены. Без таких соглашений инструментальные средства оч сложно сделать.