Вы хотите сказать, что это ограничение - Ваша идея? Или это не так?
Какое ограничение?
В C# идеология иная, чем в Pascal. Точнее, описание каждого класса в отдельном файле здесь не приветствуется. Данное ограничение запрещает это делать - а значит сохранят идеологию языка Pascal. Но с другой стороны - в C# пространства имён обладают более широким функционалом. Но тут вопрос - а стоит ли расширять мощь namespace’ов до мощи в C#, если это позволит нарушать идеологию языка?
Да ну? Я вот с недавнего времени только так и делаю. Удобно. Про неймспейсы Админ уже всё сказал, там сделали базу, которая позволит их создавать. Ни о каком сахаре пока и речи быть не может.
Недавно находил, что @Admin такое писал:
Никак. Здесь - другая идеология. Надо понимать, что в Object Pascal нет проектов - есть главный файл и подключаемые к нему модули (каждый - в своём файле и каждый определяет своё пространство имён)
Что?
Скажите, зачем Вам это понадобилось и понимаете ли Вы, что пространства имен - это 0 байт кода? Или Вы это воспринимаете как модуль?
Это позволяет упорядочить имена в динамических библиотеках, которые я нередко пишу. Совать огромное количество имён в одно место - крайне нежелательно. Даже GraphABC и ABCObjects, будь моя воля, я разделил бы на несколько неймспейсов.
Как я могу воспринимать их как модуль, если их нельзя подключить к программе?
{$includenamespace Name}
Почему нельзя?
В основную программу?
Попробовал подключить и:
Пространство имён:
namespace X;
end.
Программа:
{$includenamespace X}
begin
end.
Честно говоря, не понимаю с чем это связано.
А расширение кто съел?
Вас понял. Теперь все нормально. Но, на мой взгляд, должна была появится ошибка, а не Undefined FileName.
Это ключевое слово Матрицы . Оно отвечает за все ошибки Паскаля.
А Вы понимаете, что как только Вы эти неим спейсы записываете так, то они превращаются в единицу компиляции?
Пошли на поводу у одного человека, которому это было нужно - получился какой-то монстр
Понимаю…
Не понял, а в чём проблема?
В том, что ваша идея испортила язык
Как?