Бесточечное программирование

Поделись знанием:
Перейти к: навигация, поиск
Парадигмы программирования
 • Императивная
(контрастирует с декларативной)
Процедурная
Структурная
Аспектно-ориентированная
Объектно-ориентированная
Агентно-ориентированная
Компонентно-ориентированная
Прототипно-ориентированная
Обобщённое программирование

 • Декларативная
(контрастирует с императивной)

Чистота языка
Чистота функции
Функциональная
В терминах Рефал-машины
Аппликативная
Комбинаторная
Бесточечная
(чистая конкатенативная)
Логическая
Ограничениями

 • Конкатенативная
 • Векторная[en]
 • Метапрограммирование

Языково-ориентированная
Предметно-ориентированная
Пользователями[en]
Автоматизация процесса программирования
Рефлексивность
Гомоиконность[en]

 • Связанные темы

Программирование в крупном и мелком масштабе[en]
Модульность
Полиморфизм
Продолжения и CPS
Параллелизм и конкурентность

 • Методы и алгоритмы

Автоматное
Динамическое
Потоков данных
Событийно-ориентированное
Реактивное
Сервис-ориентированное

Комбинаторное программирование (также программирование, свободное от указателей и Бесточечное программирование) — парадигма программирования, в которой при объявлении функций не используются промежуточные переменные, но составляются цепочки из функций[1].

Комбинаторное программирование представляет теоретический интерес, однако излишне сложна[2]. Комбинаторное программирование основано на комбинаторной логики.



Конвейер в UNIX

Аналогичным подходом пользуется конвейер в ОС UNIX.

Например, запрос в командную строку с использованием возможностей конвейера:

ps aux | grep [k]de | gawk '{ print $2}'

Напишите отзыв о статье "Бесточечное программирование"

Примечания

  1. Программирование на языке OCaml, 2014.
  2. [www4.di.uminho.pt/~mac/Publications/phd.pdf Point-free Program Calculation].

Ссылки

  • Мински, Я., Мадхавапедди, А., Хикки, Д. [books.google.ru/books?id=GlcHCgAAQBAJ&printsec=frontcover&hl=ru Программирование на языке OCaml]. — 2014. — 536 с.
  • [portal.acm.org/citation.cfm?id=114065&dl=GUIDE&coll=GUIDE Pure Functions in APL and J] How to use tacit programming in any APL-like language

Отрывок, характеризующий Бесточечное программирование

Форейтор тронулся, и карета загремела колесами. Князь Ипполит смеялся отрывисто, стоя на крыльце и дожидаясь виконта, которого он обещал довезти до дому.

– Eh bien, mon cher, votre petite princesse est tres bien, tres bien, – сказал виконт, усевшись в карету с Ипполитом. – Mais tres bien. – Он поцеловал кончики своих пальцев. – Et tout a fait francaise. [Ну, мой дорогой, ваша маленькая княгиня очень мила! Очень мила и совершенная француженка.]
Ипполит, фыркнув, засмеялся.
– Et savez vous que vous etes terrible avec votre petit air innocent, – продолжал виконт. – Je plains le pauvre Mariei, ce petit officier, qui se donne des airs de prince regnant.. [А знаете ли, вы ужасный человек, несмотря на ваш невинный вид. Мне жаль бедного мужа, этого офицерика, который корчит из себя владетельную особу.]
Ипполит фыркнул еще и сквозь смех проговорил:
– Et vous disiez, que les dames russes ne valaient pas les dames francaises. Il faut savoir s'y prendre. [А вы говорили, что русские дамы хуже французских. Надо уметь взяться.]
Пьер, приехав вперед, как домашний человек, прошел в кабинет князя Андрея и тотчас же, по привычке, лег на диван, взял первую попавшуюся с полки книгу (это были Записки Цезаря) и принялся, облокотившись, читать ее из середины.