Functor js

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

by dimitrs_papadimitriou

HTML

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

JavaScript

var functor= function  (val)  { 
this.val= val;
this.map  = function(func) { return new  functor(func(val))}
}

var f1 = new functor(4);
var f2 = f1.map(x=>x*x);