Программирование наизнанку

Pavel Vetokhin
2 min readOct 4, 2020

--

Процедуры, функции, типы, структуры, акторы, объекты, классы — это лишь малая часть понятий, которые так или иначе относятся к программированию. Через призму данных понятий обычно формируются представления о нём. Значит нам также потребуются понятия¹, которые позволят взглянуть на программирование иначе.

Трансляция

В рамках трансляции сопоставляется воздействие и реакция. Когда просят купить хлеб, то необходимо взять деньги и пойти в магазин. Когда просят сделать сортировку, то необходимо получить массив и выполнить попарное сравнение. В некотором смысле трансляция есть перевод с “языка воздействия” одного на “язык воздействия” другого.

Трансакция

Трансакция суть двустороннее действие. Один отправляет, другой принимает. Один продаёт, другой покупает. Совершить одностороннюю трансакцию по определению невозможно. В качестве модели трансакции может выступать описание интерфейса в некотором языке программирования или, например, положение, регламентирующие поведение сторон в гражданском акте.

Трансформация

В рамках трансформации одни формы уже потрачены, а новая форма ещё только будет создана. Постройка дома есть трансформация таких форм как строительные материалы в такую форму как дом. Наполовину построенный дом пока ещё не является полноценным домом, но уже не является кирпичами, цементом и прочими строительными материалами, потраченными на его строительство.

Программирование

Программа есть совокупность трансляций, трансакций и трансформаций.

Программирование суть моделирование трансляций, трансакций и трансформаций.

[1]: Пока только интуитивные представления о понятиях или, можно сказать, наброски понятий, которые навеяны работами Франка Фенинга (например, этой или этой), Александра Болдачёва (например, этой) и Андрея Смирнова (например, этой).

--

--