Частичное применение
Создание новой функции фиксацией части аргументов существующей: из add(a, b) и const add5 = partial(add, 5) получаем add5(10) = 15. Уменьшает арность функции; базовый приём функционального программирования.
От каррирования отличается тем, что подставляются конкретные значения, а каррирование меняет саму форму функции. В JavaScript это Function.prototype.bind(): add.bind(null, 5) — и есть частичное применение. В Python — functools.partial. Применяется для настройки колбэков (обработчики событий с заранее заданными данными), построения конвейеров и лёгкой инъекции зависимостей. Накладные расходы минимальны, JIT оптимизирует такие вызовы хорошо.