JSFiddle - React, Tailwind, and code Playground

JavaScript

var id = (e) => e;
console.log(id(44))

var comp = (f, g) => {
  return (...args) => {
    return f(g(args))
  }
}

var plus = (n) => ++n;
var fois = (n) => n * 2;
var moins = (n) => --n;

console.log(plus(8));

var res = comp(plus, fois)(5); //(5*2) + 1
console.log(res)

var testIdentity = (comp, f, g, h, ...args) => {
  //f.g.h
  var a = comp(f, (comp(g, h)))(...args);
  var b = comp(comp(f, g), h)(...args);
  console.log(a);
  console.log(b);
  return a == b;
}
var resTest = testIdentity(comp, plus, fois, moins, 8);
console.log(resTest)