Вы не найдете хорошего руководства по созданию модульной системы, потому что нет единого мнения о том, как выглядит хорошая модульная система, а также потому, что много деталей будет зависеть от точной природы вашего языка. .
То, что вы найдете, если вы посмотрите, это долгие дискуссии о том, как починить сломанную систему модулей для разных языков. Вы найдете эти обсуждения, потому что почти каждый язык начинался с модульной системы (или имел систему модульного подключения), которая не работала должным образом. Практически каждый язык должен был либо внедрить новую модульную систему на своем пути с вытекающими отсюда проблемами обратной совместимости, либо смириться с тем, что неисправимо fl aws, обнаруженным в исходной реализации. Прочитав эти обсуждения, вы многому научитесь.
Одна из причин этого заключается в том, что многие языки были разработаны программистами, которые практически не имели опыта работы с разумной модульной системой. Постарайтесь не попасть в эту категорию. Если у вас есть опыт работы с одной или несколькими модульными системами, используйте этот опыт для разработки лучшей. И прочитайте столько, сколько вы можете найти у заслуживающих доверия критиков этих систем.
И не ожидайте, что вы достигнете совершенства в первый раз :-) Убедитесь, что вы много тренируете свою систему, пока находитесь в фаза разработки и возможность вносить коррективы без ущерба для устаревшего кода.
Удачи!