Организовать при помощи каррирования цепочку вызова методов (по аналогии например с lodash/underscrore).
var transfromedVal = wrap(val).transform().transform().result();
Вообще по замыканиям любая задача с обходом коллекций через map/reduce, например реализовать map через reduce или filter через reduce.
Отдельно по замыканиям - сокрытие имплементации какого-то сервиса - из модуля экспортируются только функции интерфейса,
рекурсия это обычно обход графов и коллекций, классическая задачка на реализацию бинарного поиска или какой-нибудь сортировки не сильно востребованы на практике... Можно конечно предложить реализовать функцию валидации какого-то объекта со связями...