code: function punif(a, b, lowerTail, logp) {
        logp = logp === true;
        lowerTail = lowerTail !== false;
  
        if (b < a || !utils.isFinite(a) || !utils.isFinite(b)) {
           return function(x) { return NaN; };
        }
  
        return function(x) {
           if (utils.hasNaN(x)) { return NaN; }
           if (x >= b) { return utils.adjustLower(1, lowerTail, logp); }
           if (x <= a) { return utils.adjustLower(0, lowerTail, logp); }
  
           return utils.adjustLower(
              (lowerTail ? x - a : b - x) / (b - a), true, logp
           );
        };
     }
docs: Evaluates the lower-tail cdf at `x` for the Uniform distribution:
  $$\textrm{punif}(a, b)(x) = \begin{cases}
  \frac{x-a}{b-a},  & \text{if $a \leq x \leq b$} \\\\
  0,                & \text{if $x < a$} \\\\
  1,                & \text{if $x > b$} \end{cases} $$
  
  Expects $a < b$.
  
  `lowerTail` defaults to `true`; if `lowerTail` is `false`, returns
  the upper tail probability instead.
  
  `logp` defaults to `false`; if `logp` is `true`, returns the logarithm
  of the result.
  @fullName punif(a, b, lowerTail, logp)(x)
  @memberof uniform