Рейтинг пользователей: / 0
ХудшийЛучший 

УДК 811.93

Никифоров А.Ю., Русаков В.А.

О СПЕЦИАЛИЗАЦИИ И ЭФФЕКТИВНОСТИ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ

Национальный исследовательский ядерный университет «МИФИ»

 

В данном докладе рассматривается синтез языков программирования как специализированных средств описания заданной предметной области.

Ключевые слова: технология разработки, языки программирования.

This report examines synthesis of programming languages as specialised tools to descript defined application domain.

Key words: development technology, programming languages.

Естественные языки постоянно меняются, отмирают, появляются новые, откликаясь и специализируясь на текущие потребности их носителей. Технические системы гораздо более простые, чем естественные, но недостатки описаний на естественных языках привели к разработкам более специализированных искусственных языков. В настоящий момент стоит проблема создания средств описания различных предметных областей  для последующей их обработки компьютерами. Использование универсальных языков программирования зачастую неприемлемо, т.к. они оторваны от предметной области и у специалистов не возникает желания и возможности изучать их тонкости.

Сближение семантик выразительных средств, используемых для описания предметной области, и понятий, свойственных этой области, способствует большей ясности и выразительности таких описаний, выполненных специалистом. Выделяя и группируя понятия конкретной предметной области и семантическое наполнение соответствующих языковых конструкций, можно добиться того, что вся совокупность подобных групп понятий полностью содержательно покроет данную предметную область.

За меру удаленности, приводящей к включению в разные группы, может быть положена согласованно трактуемая специалистами ориентировочная семантическая независимость понятий. Поэтому, выбрав по представителю из каждой из таких групп, можно сформировать семантический базис предметной области. Это означает, что язык с конструкциями, нагруженными семантикой такого базиса, язык, представляемый совокупностью программ на нем, в состоянии полностью передать семантику заданной предметной области. Такой язык естественно назвать допустимым для этой области, а его синтаксис и соответствующую грамматику – допустимыми синтаксисом и грамматикой.

Переход к другому семантическому базису с другими представителями групп означает выбор другого языка для данной предметной области также с допустимым синтаксисом. В итоге при последующем введении  дополнительной меры – например, так или иначе понимаемой сложности языка [1], появляется возможность выбора допустимого языка на ее основе.

Синтезированный в целях апробации описанного подхода язык упорядоченного описания взаимодействия систем [2] показал значительное преимущество перед прочими языками описания той же предметной области, как в части формальных критериев, так и в практике использования.

В заключение можно сказать, что будущее за постоянно появляющимися, развивающимися и отмирающими специализированными языками для специалистов в конкретных предметных областях. Такие языки могут и должны создаваться под их нужды. При создании языка следует использовать метрики, позволяющие выбрать более простой в использовании вариант языка.

 

Литература:

1. Power J.F., Malloy B.A. Metric-Based Analysis of Context-Free Grammars./ 8th IEEE International Workshop on Program Comprehension. – Limerick: IEEE Computer Society, 2000. – pp. 171-178.

2. Никифоров А.Ю. Язык описания взаимодействия иерархических систем и его персонализация. // Программные продукты и системы. – 2009. – №1 – С. 36-37.