Functor

https://github.com/eu81273/jsfiddle-console

by dimitrs_papadimitriou

HTML

<script src="https://rawgit.com/eu81273/jsfiddle-console/master/console.js"></script>

JavaScript

const Id = (v) => ({
  value: v,
  map: (f) => Id(f(v))
});

var s =  Id(2)
.map(x=>x*x)
.map(x=>x.toString());
 
console.log(s.value);