function compose (/* [func,] */) {
        var args = argsToArray(arguments);
        return function (arg0) {
            return args.reduceRight(function (value, arg){
                return arg(value);
            }, arg0);
        };
    }
function compose () {
        var args = argsToArray(arguments);
        return function (arg0) {
            return args.reduceRight(function (value, arg){
                return arg(value);
            }, arg0);
        };
    }
function compose ( /* [func,] */ ) { var args = argsToArray ( arguments ) ; return function ( arg0 ) { return args . reduceRight ( function ( value , arg ) { return arg ( value ) ; } , arg0 ) ; } ; }
Composes one or more functions into a new one.
@function module:sjl.compose
@returns {Function}
Composes one or more functions into a new one .