I want to make this syntax possible:
var a = add(2)(3); //5
based on what I read at http://dmitry.baranovskiy.com/post/31797647
I\
let add = (a, b) => b === undefined ? add.bind(null, a) : a + b;
console.log(add(10, 5)); //15
console.log(add(10)(5)); //15
/* In the arrow function which returns a ternary expression, we explicitly check if the 2nd argument(b) is passed in or not b==="undefined" in both cases of add(a,b) and add(a)(b).