Программирование высшего порядка - это стиль компьютерного программирования , в котором в качестве значений используются программные компоненты, такие как функции, модули или объекты. Обычно он создается или заимствуется из моделей вычислений, таких как лямбда-исчисление, в которых интенсивно используются функции высшего порядка .
Например, в программировании высшего порядка можно передавать функции в качестве аргументов другим функциям, а функции могут быть возвращаемыми значениями других функций (например, в макросах или для интерпретации ). Этот стиль программирования в основном используется в функциональном программировании , но он также может быть очень полезен в объектно-ориентированном программировании . Несколько другая интерпретация программирования высшего порядка в контексте объектно-ориентированного программирования - это сообщения более высокого порядка , которые позволяют сообщениям иметь другие сообщения в качестве аргументов, а не функций.
Яркими примерами языков, поддерживающих это, являются Wolfram Language , C # , Java , ECMAScript ( ActionScript , JavaScript , JScript ), F # , Haskell , Lisp ( Common Lisp , Scheme , Clojure , другие), Lua , Oz , Perl , PHP , Prolog , [ 1] Python , Ruby , Smalltalk , Scala , ML и Erlang .
Смотрите также
Рекомендации
- ^ Naish, Lee (1996). Программирование логики высшего порядка на Прологе (Отчет). Департамент компьютерных наук Мельбурнского университета . Проверено 2 ноября 2010 .
Внешние ссылки
- «Программирование высшего порядка» Сьерда Висшера (использует JavaScript в качестве примера языка)