Эмуляция пространств имен в Фортран 90

Одна из самых неприятных проблем с Fortran 90 - это отсутствие пространства имен. В этом предыдущем вопросеКак вы используете данные модуля Fortran 90" отПитОбсуждалась основная проблема USE, которая ведет себя как «из модуля импорта *» в Python: все, что объявлено в модуле как public, импортируется как есть в рамках модуля импорта. Нет префикса. Это делает очень, очень трудным для понимания при чтении некоторого кода, откуда берется данный идентификатор, и если данный модуль все еще используется или нет.

Возможное решение, обсуждаемое в вопросе, который я связал выше, заключается в использовании ключевого слова ONLY для ограничения импортируемых идентификаторов и документа, откуда они поступают, хотя это очень, очень утомительно, когда модуль очень большой. Держать модуль небольшим и всегда использовать USE: ONLY - это потенциально хорошая стратегия для обхода отсутствия пространства имен и префиксов квалификации в Fortran 9X.

Существуют ли другие (не обязательно лучшие) обходные стратегии? Говорит ли стандарт Fortran 2k3 о поддержке пространства имен?

Ответы на вопрос(3)

Ваш ответ на вопрос