@dashkite/joy
Version:
[](https://firstdonoharm.dev/version/3/0/core.html)
58 lines (57 loc) • 8.56 kB
JavaScript
var abs, add, cube, div, even, gt, gte, isModulo, lt, lte, max, min, mod, mul, odd, pow, square, sub;
import { _, curry, partial, apply } from "./function";
import { negate } from "./predicate";
// `eq` and `neq` were here, but I moved them to the value module.
gte = curry(function(x, y) {
return y >= x;
});
lte = curry(function(x, y) {
return y <= x;
});
gt = curry(function(x, y) {
return y > x;
});
lt = curry(function(x, y) {
return y < x;
});
add = curry(function(x, y) {
return x + y;
});
sub = curry(function(x, y) {
return y - x;
});
mul = curry(function(x, y) {
return x * y;
});
div = curry(function(x, y) {
return y / x;
});
mod = curry(function(x, y) {
return y % x;
});
isModulo = curry(function(x, y) {
return y % x === 0;
});
even = isModulo(2);
odd = negate(even);
min = function(ax) {
return apply(Math.min, ax);
};
max = function(ax) {
return apply(Math.max, ax);
};
({ abs } = Math);
pow = curry(function(x, y) {
return x ** y;
});
square = partial(pow, [
_,
2
]);
cube = partial(pow, [
_,
3
]);
export { gt, lt, gte, lte, add, sub, mul, div, mod, isModulo, even, odd, min, max, abs, pow, square, cube }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiL0BkYXNoa2l0ZS9qb3kvc3JjL21hdGguY29mZmVlIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLElBQUEsR0FBQSxFQUFBLEdBQUEsRUFBQSxJQUFBLEVBQUEsR0FBQSxFQUFBLElBQUEsRUFBQSxFQUFBLEVBQUEsR0FBQSxFQUFBLFFBQUEsRUFBQSxFQUFBLEVBQUEsR0FBQSxFQUFBLEdBQUEsRUFBQSxHQUFBLEVBQUEsR0FBQSxFQUFBLEdBQUEsRUFBQSxHQUFBLEVBQUEsR0FBQSxFQUFBLE1BQUEsRUFBQTs7QUFBQSxPQUFBO0VBQVEsQ0FBUjtFQUFXLEtBQVg7RUFBa0IsT0FBbEI7RUFBMkIsS0FBM0I7Q0FBQSxNQUFBOztBQUNBLE9BQUE7RUFBUSxNQUFSO0NBQUEsTUFBQSxjQURBOzs7QUFLQSxHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxJQUFLO0FBQWYsQ0FBTjs7QUFDTixHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxJQUFLO0FBQWYsQ0FBTjs7QUFDTixFQUFBLEdBQUssS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJO0FBQWQsQ0FBTjs7QUFDTCxFQUFBLEdBQUssS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJO0FBQWQsQ0FBTjs7QUFFTCxHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJO0FBQWQsQ0FBTjs7QUFDTixHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJO0FBQWQsQ0FBTjs7QUFDTixHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJO0FBQWQsQ0FBTjs7QUFDTixHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJO0FBQWQsQ0FBTjs7QUFDTixHQUFBLEdBQU0sS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJO0FBQWQsQ0FBTjs7QUFFTixRQUFBLEdBQVcsS0FBQSxDQUFNLFFBQUEsQ0FBQyxDQUFELEVBQUksQ0FBSixDQUFBO1NBQVUsQ0FBQSxHQUFJLENBQUosS0FBUztBQUFuQixDQUFOOztBQUNYLElBQUEsR0FBTyxRQUFBLENBQVMsQ0FBVDs7QUFDUCxHQUFBLEdBQU0sTUFBQSxDQUFPLElBQVA7O0FBRU4sR0FBQSxHQUFNLFFBQUEsQ0FBQyxFQUFELENBQUE7U0FBUSxLQUFBLENBQU0sSUFBSSxDQUFDLEdBQVgsRUFBZ0IsRUFBaEI7QUFBUjs7QUFDTixHQUFBLEdBQU0sUUFBQSxDQUFDLEVBQUQsQ0FBQTtTQUFRLEtBQUEsQ0FBTSxJQUFJLENBQUMsR0FBWCxFQUFnQixFQUFoQjtBQUFSOztBQUVOLENBQUEsQ0FBQyxHQUFELENBQUEsR0FBUSxJQUFSOztBQUVBLEdBQUEsR0FBTSxLQUFBLENBQU0sUUFBQSxDQUFDLENBQUQsRUFBSSxDQUFKLENBQUE7U0FBVSxDQUFBLElBQUs7QUFBZixDQUFOOztBQUVOLE1BQUEsR0FBUyxPQUFBLENBQVEsR0FBUixFQUFhLENBQUUsQ0FBRixFQUFLLENBQUwsQ0FBYjs7QUFDVCxJQUFBLEdBQU8sT0FBQSxDQUFRLEdBQVIsRUFBYSxDQUFFLENBQUYsRUFBSyxDQUFMLENBQWI7O0FBRVAsT0FBQTtFQUFRLEVBQVI7RUFBWSxFQUFaO0VBQWdCLEdBQWhCO0VBQXFCLEdBQXJCO0VBQTBCLEdBQTFCO0VBQStCLEdBQS9CO0VBQW9DLEdBQXBDO0VBQXlDLEdBQXpDO0VBQThDLEdBQTlDO0VBQ0UsUUFERjtFQUNZLElBRFo7RUFDa0IsR0FEbEI7RUFDdUIsR0FEdkI7RUFDNEIsR0FENUI7RUFDaUMsR0FEakM7RUFDc0MsR0FEdEM7RUFDMkMsTUFEM0M7RUFDbUQsSUFEbkQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge18sIGN1cnJ5LCBwYXJ0aWFsLCBhcHBseX0gZnJvbSBcIi4vZnVuY3Rpb25cIlxuaW1wb3J0IHtuZWdhdGV9IGZyb20gXCIuL3ByZWRpY2F0ZVwiXG5cbiMgYGVxYCBhbmQgYG5lcWAgd2VyZSBoZXJlLCBidXQgSSBtb3ZlZCB0aGVtIHRvIHRoZSB2YWx1ZSBtb2R1bGUuIFxuXG5ndGUgPSBjdXJyeSAoeCwgeSkgLT4geSA+PSB4XG5sdGUgPSBjdXJyeSAoeCwgeSkgLT4geSA8PSB4XG5ndCA9IGN1cnJ5ICh4LCB5KSAtPiB5ID4geFxubHQgPSBjdXJyeSAoeCwgeSkgLT4geSA8IHhcblxuYWRkID0gY3VycnkgKHgsIHkpIC0+IHggKyB5XG5zdWIgPSBjdXJyeSAoeCwgeSkgLT4geSAtIHhcbm11bCA9IGN1cnJ5ICh4LCB5KSAtPiB4ICogeVxuZGl2ID0gY3VycnkgKHgsIHkpIC0+IHkgLyB4XG5tb2QgPSBjdXJyeSAoeCwgeSkgLT4geSAlIHhcblxuaXNNb2R1bG8gPSBjdXJyeSAoeCwgeSkgLT4geSAlIHggPT0gMFxuZXZlbiA9IGlzTW9kdWxvIDJcbm9kZCA9IG5lZ2F0ZSBldmVuXG5cbm1pbiA9IChheCkgLT4gYXBwbHkgTWF0aC5taW4sIGF4XG5tYXggPSAoYXgpIC0+IGFwcGx5IE1hdGgubWF4LCBheFxuXG57YWJzfSA9IE1hdGhcblxucG93ID0gY3VycnkgKHgsIHkpIC0+IHggKiogeVxuXG5zcXVhcmUgPSBwYXJ0aWFsIHBvdywgWyBfLCAyIF1cbmN1YmUgPSBwYXJ0aWFsIHBvdywgWyBfLCAzIF1cblxuZXhwb3J0IHtndCwgbHQsIGd0ZSwgbHRlLCBhZGQsIHN1YiwgbXVsLCBkaXYsIG1vZCxcbiAgaXNNb2R1bG8sIGV2ZW4sIG9kZCwgbWluLCBtYXgsIGFicywgcG93LCBzcXVhcmUsIGN1YmV9XG4iXX0=
//# sourceURL=/@dashkite/joy/src/math.coffee
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiIiwic291cmNlcyI6WyIvQGRhc2hraXRlL2pveS9zcmMvbWF0aC5jb2ZmZWUiXSwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XywgY3VycnksIHBhcnRpYWwsIGFwcGx5fSBmcm9tIFwiLi9mdW5jdGlvblwiXG5pbXBvcnQge25lZ2F0ZX0gZnJvbSBcIi4vcHJlZGljYXRlXCJcblxuIyBgZXFgIGFuZCBgbmVxYCB3ZXJlIGhlcmUsIGJ1dCBJIG1vdmVkIHRoZW0gdG8gdGhlIHZhbHVlIG1vZHVsZS4gXG5cbmd0ZSA9IGN1cnJ5ICh4LCB5KSAtPiB5ID49IHhcbmx0ZSA9IGN1cnJ5ICh4LCB5KSAtPiB5IDw9IHhcbmd0ID0gY3VycnkgKHgsIHkpIC0+IHkgPiB4XG5sdCA9IGN1cnJ5ICh4LCB5KSAtPiB5IDwgeFxuXG5hZGQgPSBjdXJyeSAoeCwgeSkgLT4geCArIHlcbnN1YiA9IGN1cnJ5ICh4LCB5KSAtPiB5IC0geFxubXVsID0gY3VycnkgKHgsIHkpIC0+IHggKiB5XG5kaXYgPSBjdXJyeSAoeCwgeSkgLT4geSAvIHhcbm1vZCA9IGN1cnJ5ICh4LCB5KSAtPiB5ICUgeFxuXG5pc01vZHVsbyA9IGN1cnJ5ICh4LCB5KSAtPiB5ICUgeCA9PSAwXG5ldmVuID0gaXNNb2R1bG8gMlxub2RkID0gbmVnYXRlIGV2ZW5cblxubWluID0gKGF4KSAtPiBhcHBseSBNYXRoLm1pbiwgYXhcbm1heCA9IChheCkgLT4gYXBwbHkgTWF0aC5tYXgsIGF4XG5cbnthYnN9ID0gTWF0aFxuXG5wb3cgPSBjdXJyeSAoeCwgeSkgLT4geCAqKiB5XG5cbnNxdWFyZSA9IHBhcnRpYWwgcG93LCBbIF8sIDIgXVxuY3ViZSA9IHBhcnRpYWwgcG93LCBbIF8sIDMgXVxuXG5leHBvcnQge2d0LCBsdCwgZ3RlLCBsdGUsIGFkZCwgc3ViLCBtdWwsIGRpdiwgbW9kLFxuICBpc01vZHVsbywgZXZlbiwgb2RkLCBtaW4sIG1heCwgYWJzLCBwb3csIHNxdWFyZSwgY3Vi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