Как улучшить код вызова функций?
Похоже что тут можно было бы применить функциональные конвейеры из библиотек вроде Underscore, Ramda или что там ещё. Ещё можно сделать транспиляцию с помощью Babel конвейерного оператора, который пока не добрался до стандарта. Работает всё это как-то так:// где-то в библиотеке
function pipe(...fns) {
  return function (arg) {
    let result = arg;
    for (let i = 0; i < fns.length; i++) {
      result = fns[i](result);
    }
    return result;
  }
}

// в коде
const result = pipe(
  f3,
  f2,
  _ => f1(_, 1),
  _ => f0(_, 'test')
)(1000);
Но я считаю, что код станет более очевидным если его просто разбить на несколько строк:const result3 = f3(1000)
const result2 = f2(result1)
const result1 = f1(result2, 1)
const result0 = f0(result2, 'test')
Использовать compose