September 2017 Update

This commit is contained in:
Ingy döt Net 2017-09-23 10:01:46 +02:00
parent bba7bfd280
commit ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions

View file

@ -1,20 +1,16 @@
(() => {
'use strict';
// compose :: [(a -> a)] -> (a -> a)
let compose = fs => x => fs.reduceRight((a, f) => f(a), x);
// TEST a composition of 3 functions (right to left)
let sqrt = Math.sqrt,
succ = x => x + 1,
half = x => x / 2;
return compose([half, succ, sqrt])(5);
// --> 1.618033988749895

View file

@ -0,0 +1,19 @@
(() => {
'use strict';
// compose :: (a -> b) -> (b -> c) -> (a -> c)
const compose = (f, g) => x => g(f(x));
// TEST
const
sqrt = Math.sqrt,
succ = x => x + 1,
half = x => x / 2;
const
succSqrt = compose(sqrt, succ),
halfSuccSqrt = compose(succSqrt, half);
return halfSuccSqrt(5);
})();