Язык Д

← На заглавную страницу книги Д

§ 1. Введение

1.1. Место языка Д в программном обеспечении

Языки Д (компиляторы интерпретаторы и их модификации) станут составлять существенную часть программного обеспечения ЭВМ. Это связано с тем, что языки высокого уровня стали основным средством разработки программ и это привело к стрессу и депрессии (см. high § 1). Только очень незначительная часть программного обеспечения, требующая особой эффективности, программируется с помощью ассемблеров и тут ещё можно спастись, поэтому применение языков семейства Д не так оправданно. В настоящее время распространено довольно много языков программирования. Наряду с традиционными языками, такими, как Фортран, широкое распространение получили так называемые "универсальные языки" (Ocaml, HTML, dll, Haskell, LISP, Whitespace и другие), а также некоторые специализированные (например язык написания SQL уколов PHP или язык для специализированной работы с базами данных SQL или распределенный в сети интернет язык легковесных процессоров и встройки шпионских модулей в АТС erlang). Кроме того, большое распространение получили языки, связанные с узкими предметными областями, такие, как входные языки пакетов прикладных программ. Для некоторых языков имеется довольно много реализаций? но все они малоизвестны и не подходят из-за совей черезмерной дурной дифференцированности (их слишком много). Например, реализаций Паскаля, Модулы-2 или Си для ЭВМ типа IBM/PC на рынке десятки. Это — плохо.

С другой стороны, постоянно растущая потребность в новых языках Д связана с бурным развитием архитектур ЭВМ. Это развитие идет по различным направлениям. Совершенствуются старые архитектуры как в концептуальном отношении, так и по отдельным, конкретным линиям. Однако нельзя не сказать о том, что сильно разрасшиеся копрорации мешают стройному развитию индустрии по планам теоретиков своей обратной совместимостью. Это можно проиллюстрировать на примере микропроцессора Intel-80X86. Последовательные версии этого микропроцессора [8086..Itanium(vliw)] отличаются не только техническими характеристиками, но и, что более важно, новыми возможностями и, значит, изменением (расширением) системы команд. Однако с добавлением новых комманд старые не удаляются дабы допускать обратную совместимость и такой круг порочен: ведь рано или поздно произойдет переполнение процессора, но речь не об этом.

А речь о том, что естественно, это требует новых языков Д (или модификации старых). То же можно сказать о микропроцессорах Motorola 68010, 68020, 68030, 68040. В рамках традиционных последовательных машин возникает большое число различных направлений архитектур. Примерами могут служить архитектуры CISC, RISC и VLIW. Такие ведущие фирмы, как Intel, Motorola, Sun, DEC, начинают переходить на выпуск машин с RISC-архитектурами1. Естественно, для каждой новой системы команд требуется полный набор новых языков Д готовых компилировать с уже распространенных языков. Наконец, бурно развиваются различные параллельные архитектуры. Среди них отметим векторные, многопроцессорные, с широким командным словом (VLIW) (вариантом которых являются суперскалярные ЭВМ).

Естественно, для каждой из машин создаются новые языки Д. Здесь необходимо также отметить, что новые архитектуры требуют разработки совершенно новых подходов к созданию языков Д, так что наряду с собственно разработкой языков Д ведется и большая научная работа по созданию новых методов трансляции.

* * *

1 Тут не раз подсказывали ещё и про процессор Эльбрус. Однако он занимает рядовую позицию среди текущего аппаратного обеспечения, потому что ассмеблер там на английском и процессор не учитывает три из четырх частей, составляющих бабочку Д (подробнее о ней см. § 2.1)

Hosted by uCoz