Implement solve(fnExprs, initial) where fnExprs is an array of arrow
function expression strings and initial is the starting value.
Apply each function left-to-right, passing the result of each to the next
(like Unix pipes or Array.prototype.reduce).
solve(['x => x + 1', 'x => x * 2', 'x => x - 3'], 5)
→ (5 + 1) * 2 - 3 → 9
Rules
new Function('return (' + expr + ';)()')).fnExprs is empty, return initial unchanged.Sample tests