-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathreducedFunctionWithUnderscores,js
17 lines (13 loc) · 2.78 KB
/
reducedFunctionWithUnderscores,js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
const fact = (_____________________________________ => (______________________________________ => _____________________________________(_______________________________________ => ______________________________________(______________________________________)(_______________________________________)))(______________________________________ => _____________________________________(_______________________________________ => ______________________________________(______________________________________)(_______________________________________))))(_________________________________ => __________________________________ => (______________________________ => _______________________________ => ________________________________ => ______________________________(_______________________________)(________________________________)())((_________ => _________(__________ => _______ => ________ => ________)(_____ => ______ => _____))(__________________________________))(___________________________________ => ___ => ____ => ___(____))(____________________________________ => (_________________________ => __________________________ => __________________________((___________________ => ____________________ => _____________________ => ______________________ => ____________________(_____________________)(___________________(_____________________)(______________________)))(_________________________))(_ => __ => __))(__________________________________)(_________________________________((_______________________ => (______________ => ______________(_____ => ______ => _____))( _______________________(________________________ => (___________ => ____________ => _____________ => _____________(___________)(____________))( (_______________ => _______________(_______ => ________ => ________))(________________________))( (________________ => _________________ => __________________ => _________________(________________(_________________)(__________________)))((_______________ => _______________(_______ => ________ => ________))(________________________)))) ((___________ => ____________ => _____________ => _____________(___________)(____________))(_ => __ => __)(_ => __ => __))))(__________________________________)))))
const decodeNumber = n => n(i => i + 1)(0)
const encodeNumber = n => Array.from(Array(n).keys(), item => item + 1).reduce((p, n) => (________________ => _________________ => __________________ => _________________(________________(_________________)(__________________)))(p), _ => __ => __);
const exec = f => n => decodeNumber(f(encodeNumber(n)));
//console.log(decodeNumber(fact(Five))); //120
//console.log(exec(fact)(5)); //120
console.log(exec(fact)(1))
console.log(exec(fact)(2))
console.log(exec(fact)(3))
console.log(exec(fact)(4))
console.log(exec(fact)(5))
console.log(exec(fact)(6))
console.log(exec(fact)(7))