function dropLastWhile(pred, xs) {
    var idx = xs.length - 1;
    while (idx >= 0 && pred(xs[idx])) {
      idx -= 1;
    }
    return slice(0, idx + 1, xs);
  }
Returns a list containing all but the last `n` elements of the given `list`.

Acts as a transducer if a transformer is given in list position.

@func
@memberOf R
@since v0.16.0
@category List
@sig Number -> [a] -> [a]
@sig Number -> String -> String
@param {Number} n The number of elements of `list` to skip.
@param {Array} list The list of elements to consider.
@return {Array} A copy of the list with only the first `list.length - n` elements
@see R.takeLast, R.drop, R.dropWhile, R.dropLastWhile
@example

     R.dropLast(1, ['foo', 'bar', 'baz']); //=> ['foo', 'bar']
     R.dropLast(2, ['foo', 'bar', 'baz']); //=> ['foo']
     R.dropLast(3, ['foo', 'bar', 'baz']); //=> []
     R.dropLast(4, ['foo', 'bar', 'baz']); //=> []
     R.dropLast(3, 'ramda');               //=> 'ra'