Jump to content

Программирование высшего порядка

Программирование высшего порядка — это стиль компьютерного программирования , в котором в качестве значений используются компоненты программного обеспечения, такие как функции, модули или объекты. Обычно он создается или заимствуется из моделей вычислений, таких как лямбда-исчисление , в которых интенсивно используются функции более высокого порядка . Язык программирования можно считать языком более высокого порядка, если его компоненты, такие как процедуры или метки, можно использовать так же, как данные. Например, эти элементы можно использовать так же, как аргументы или значения. [1]

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

Примерами языков, поддерживающих это, являются Ada , Wolfram Language , C# , Java , ECMAScript ( ActionScript , JavaScript , JScript ), F# , Haskell , Lisp ( Common Lisp , Scheme , Clojure и другие), Lua , Oz , Perl , PHP , Prolog , [2] Python , Ruby , Smalltalk , Scala , ML и Erlang .

См. также [ править ]

Ссылки [ править ]

  1. ^ Рейнольдс, Джон К. (1972). «Определенные интерпретаторы языков программирования высшего порядка» (PDF) . Материалы ежегодной конференции ACM - ACM '72 (Отчет). Том. 2. Ассоциация вычислительной техники. стр. 717–740. дои : 10.1145/800194.805852 . ISBN  9781450374927 . Проверено 19 декабря 2021 г.
  2. ^ Нэйш, Ли (1996). Логическое программирование высшего порядка на Прологе (Отчет). Кафедра компьютерных наук Мельбурнского университета. CiteSeerX   10.1.1.35.4505 .

Внешние ссылки [ править ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c6bb14c64a86b2a414db6156e63168ab__1711729920
URL1:https://arc.ask3.ru/arc/aa/c6/ab/c6bb14c64a86b2a414db6156e63168ab.html
Заголовок, (Title) документа по адресу, URL1:
Higher-order programming - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)