"Денис Гаев. Ксерион: язык и технология программирования" - читать интересную книгу авторабезусловно, будут предоставляться стандартными библиотеками).
Ксерион обладает рядом важных особенностей, специфичных для этого языка или реализованных в нем лучше, чем во многих других языках программирования. Для языка в целом характерны: -- мощность и гибкость. В языке присутствуют практически все возможности, характерные для традиционных процедурных языков, таких как C++ или Паскаль, без произвольных ограничений на их использование, характерных, например, для Java. При этом многие из этих возможностей становятся намного мощнее и потенциально ценнее. Например, в Ксерионе допустимо динамическое определение размеров массивов, произвольные инициализаторы для массивов, аргументов функций и компонент классов и многое другое. -- иерархическому подходу к разработке и реализации программы во многом содействует принятый в языке принцип локальности. Любую Ксерион-программу можно рассматривать как иерархию вложенных друг в друга областей действия, а любое описание (декларация) имеет локальный характер, т.е. действует только в пределах самой внутренней из содержащих ее областей действия. Самой внешней всегда является глобальная область действия, но ее использование лучше максимально ограничить. Правильный подход к использованию принципа локальности, предполагающий описание переменных, функций, типов данных, классов и т.п. только там, где они нужны, является важным фактором улучшения как надежности, так и эффективности программы. внимание. Так, контроль над такими принципиальными для эффективности моментами, как распределение памяти, находится в руках разработчика. Некоторые средства языка, такие, как специфические атрибуты указательных типов static и strict, дают программисту явную возможность улучшать эффективность программного кода за счет его общности. Не менее важно наличие агрегатных операций присваивания и сравнения для векторных и объектных типов. -- надежность. Язык является надежным в том смысле, что на нем невозможно написать "сбойный" код. Например, обеспечивается полная проверка диапазона при обращениях к массивам, проверка валидности используемых указателей на объекты данных и ссылок на функции, предусмотрен надежный механизм преобразования между родственными объектными типами и т.п. Все ошибки подобного рода, выявленные при выполнении программы, возбуждают исключительные ситуации, которые могут быть перехвачены и корректно обработаны. -- последовательность и ясность. Предположительно, многие конструкции языка имеют более последовательный и компактный синтаксис, чем их аналоги в Паскале, Java и C++. Можно сказать, что для синтаксиса языка характерна большая "ортогональность", чем для многих других языков. Если некая конструкция языка синтаксически правильна, она почти всегда имеет какую-то разумную семантику и может быть полезна в определенной ситуации. Кроме того, язык минимизирует или полностью исключает необходимость в дублирующих |
|
|