Программирование на ценностном уровне
-
Парадигмы программирования
- Программирование на ценностном уровне противоположно программированию на функциональном уровне, согласно Джону Бэкусу.
- Изначально Бэкус использовал термин «программирование на объектном уровне», но он часто путается с объектно-ориентированным программированием.
-
Программы на уровне значений
- Программы на уровне значений описывают, как комбинировать значения для получения новых значений.
- Новые значения создаются с помощью функций преобразования значений, таких как сложение и конкатенация.
- Программы фон Неймана работают на уровне значений, создавая значения для последующего сохранения.
-
Связь с типами данных
- Подход к программированию на уровне значений включает изучение пространства значений и алгебраических свойств операций.
- Изучение типов данных фокусируется на операциях, формирующих значения, а не на самих значениях и их структуре.
-
Связь с языками лямбда-исчисления
- Языки, основанные на лямбда-исчислении, такие как Lisp, ISWIM и Scheme, являются языками ценностного уровня.
- Программы в лямбда-стиле работают на уровне значений, создавая новые программы путем лямбда-абстрагирования.
-
Программирование на функциональном уровне
- Программирование на функциональном уровне противоположно программированию на уровне значений, фокусируясь на функциях, а не на значениях.
- Функциональное программирование создает новые функции на основе существующих функций, а не значений.
Полный текст статьи: