Решил на хекслете упражнение на числа Черча. Решение: https://repl.it/repls/MistyroseSpotlessBustard.

Числа Черча связаны с понятием лямбда-исчисления. Это такая система, в которой вычисления выражают только анонимными функциями. Оказывается, одних функций достаточно, чтобы выразить любую программу, обойдясь без всяких циклов, рекурсий и условных операторов. Так вот числа Черча — это способ, которым в лямбда-исчислении выражают натуральные числа.

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

Само название чисел черча поначалу мне сильно мешало понять их смысл. По сути числом Черча называют функцию, которая принимает некую функцию, некий аргумент, потом применяет эту функцию к аргументу столько раз, какое число вся эта конструкция призвана символизировать, и возвращает полученный результат. Тройка, например, выражается так:

f => x => f(f(f(x)))

Как видим, к привычным числам все это имеет весьма отдаленное отношение.