> -- Евгений Темиргалеев писал(а):
> 1) Для ББ (про прочие компилеры не знаю) введением особого модуля для типов Вы не избавитесь от SYSTEM, т.к. его сразу тянет MODULE Aaa ["os-lib.file"].2) На базе опыта и ощущений: не стал бы я гоняться за универсальностью реализации в интерфейсных модулях (поминая макросы, воркэраунды и проч.). Основная цель, по-моему, сделать интерфейс как можно ближе к [задокументированному] оригинальному. А из-за разницы в языках (напр. Си-Оберон) это не всегда делается одинаково. Например, unsigned int можно как INTEGER перевести, а можно как SET... 3) я придерживаюсь такой схемы: в документации пишу соответствие типовДумаю, лучше говорить о единообразности процесса переноса, когда будет использоваться не особый модуль, а общие соглашения (именование, выбор правильного типа) по переводу типов, записанные (и обновляемые) в общедоступном месте.Особые ситуации, по-моему, бывают довольно часто. Если есть общие соглашения --- в случае исключения им можно не следовать. Если есть набор модулей, претендующий на универсальность, придётся часто и сильно ломать голову над тем, как эту универсальность (отсутсвтвие особых ситуаций) обеспечить.
1. Желательно минимизировать присутствие модуля SYSTEM где бы то ни было.
2. Никаких отличий я не предлагаю. Лишь alias для базовых типов, определённых в отдельном модуле. Сегодня INTEGER занимает 32 бита, завтра - 128. Именно поэтому нужно иметь независимое от компилятора представление типа. Ведь не спроста во многих библиотеках определяются типы UInt32, gchar и тому подобные. Они позволят избежать перелопачивания кода при изменении среды, в которой будет работать ПО.