http://www.youtube.com/watch?v=b0EF0VTs9Dcを見ていると、こんなJavaScriptコードを見つけました
function unit(value) {
var monad = Object.create(prototype);
monad.bind = function (func, args) {
return func.apply(undefined,
[value].concat(
Array.prototype.slice.apply(args || [])));
}
return monad;
}
のように書き直される
function unit(value) {
var monad = Object.create(prototype);
monad.bind = function (func, args) {
return func(value, ...args);
}
return monad;
}
ただし、後者は Chrome と firefox では実行されません (IE は試していません)。Javascript の新しい機能で、現在のブラウザではまだサポートされていませんか?