Непейвода Н.Н. Программирование. Раздел 3

Непейвода Н.Н. Программирование. Страница 372

Различное отношение двух родственных стилей к рекурсии можно счи­тать следствием различий в трактовке структуры информационного про­странства программы (см. § 3.3). Процедурность в программировании от состояний исходит из того, что информационное пространство является об­щим для всех подзадач, из решений которых складывается решение основ­ной задачи. Отсюда следует, что в данном случае утверждение о том, что процедура выполняется в какомто контексте, в первом приближении стано­вится тривиальным — все программные единицы вычисляются в одном и том же контексте25. Как было показано, в структурном программировании ситу­ация иная. Понятие контекста выполнения процедуры как частный случай вложенности контекстов является основой и реализационного механизма, и методики декомпозиции программы.

Другая трактовка процедур требуется и в ООП (см. соответствующую главу). Тут основным является понятие предоставляемого интерфейса, и воз­никает принципиально новое понятие делегирования действий.

Если для столь родственных моделей вычислений обнаруживаются раз­личия процедур, то что говорить о других, нетрадиционных языках и стилях, на которых мы здесь и остановимся. Но предварительно надо отметить, что традиционное понятие процедуры сформировалось под значительным вли­янием математических методов, которые использовались и используются до сих пор при исследовании вопросов вычислимости. По этой причине неуди­вительно, что процедуры функционального стиля (т. е. функции) похожи на то, что применяется в языках структурного программирования. Можно утверждать, что разработчики структурных и других ранних языков поста­рались спроецировать функциональные возможности на фон Неймановскую модель вычислений. При этом они посчитали не имеющим смысла, как про­тиворечащую ранним представлениям об эффективности, реализацию таких свойств функций, как частичная параметризация, как оперирование с типа­ми высоких порядков, как понятие предела и т. д. Практически за рамками рассмотрения осталась концепция значения, без которой оперирование с функциями (суперпозиция, комбинирование и др.) просто бессодержатель­но. Вместо них языки предлагают суррогаты, со всех сторон "обвешанные" прагматическими соглашениями. Это было бы не так страшно, если бы не стихийная стандартизация концептуально недоработанных средств, в резуль­тате чего плохие традиции сохраняются и множатся во вполне современных системах.

Новости

  • 1
  • 2
Prev Next

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

24.01.2016

Ракета "Ангара-А5В" в ближайшее десятилетие не полетит

Роскосмос не планирует в течение ближайшего десятилетия осуществлять пуск тяжёлой ракеты-носителя А...

Ученые РФ опровергли выводы исследований о вреде ГМО

24.01.2016

Ученые РФ опровергли выводы исследований о вреде ГМО

Исследователи из Института проблем передачи информации (ИППИ РАН) проанализировали несколько самых п...

Летающие "Крокодилы"

24.01.2016

Летающие "Крокодилы"

20 удивительных фактов о боевом вертолете Ми-24.Этот вертолет стал таким же узнаваемым символом сове...

В Аргентине описали новый вид динозавра-гиганта

24.01.2016

О ранее неизвестном виде динозавра, относящемуся к инфраотряду зауроподов, рассказали аргентинские п...

Реклама