diff --git a/docs/Math.md b/docs/Math.md index f5283dd..a52cd02 100644 --- a/docs/Math.md +++ b/docs/Math.md @@ -151,6 +151,16 @@ tan :: Radians -> Number Returns the tangent of the argument. +#### `(%)` + +``` purescript +(%) :: Number -> Number -> Number +``` + +_left-associative / precedence 7_ + +Computes the remainder after division, wrapping Javascript's `%` operator. + #### `e` ``` purescript @@ -216,3 +226,4 @@ sqrt2 :: Number The square root of two, around 1.41421. + diff --git a/src/Math.js b/src/Math.js index 1094063..b26e606 100644 --- a/src/Math.js +++ b/src/Math.js @@ -45,6 +45,12 @@ exports.pow = function (n) { }; }; +exports["%"] = function(n) { + return function(m) { + return n % m; + }; +}; + exports.round = Math.round; exports.sin = Math.sin; diff --git a/src/Math.purs b/src/Math.purs index 5dd5992..6f4b6cb 100644 --- a/src/Math.purs +++ b/src/Math.purs @@ -60,6 +60,11 @@ foreign import sqrt :: Number -> Number -- | Returns the tangent of the argument. foreign import tan :: Radians -> Number +infixl 7 % + +-- | Computes the remainder after division, wrapping Javascript's `%` operator. +foreign import (%) :: Number -> Number -> Number + -- | The base of natural logarithms, *e*, around 2.71828. foreign import e :: Number