<commit_before>var Limbo = module.exports = (function() {
  var slice = [].slice;
  function Limbo(_superclass, definition) {
    function Noop() {}

    if (typeof definition === 'undefined') {
      definition = _superclass;
      _superclass = Object;
    }
    else if (typeof _superclass.prototype === 'object') {
      Noop.prototype = new _superclass;
    }

    var proto = Noop.prototype
      , _super = _superclass.prototype
      , extensions = {}
    ;

    if (typeof definition === 'function') {
      extensions = definition(proto, Noop, _super, _superclass);
    }
    else if (definition && typeof definition === 'object') {
      extensions = definition;
    }

    if (extensions && typeof extensions === 'object') {
      for (var ext in extensions) {
        if (extensions.hasOwnProperty(ext)) {
          proto[ext] = extensions[ext];
        }
      }
    }

    return Noop;
  }

  Limbo.create = function create(klass /*, args... */) {
    var args = slice.call(arguments, 1)
      , obj = new klass
    ;

    if (typeof obj.init === 'function') obj.init.apply(obj, args);

    return obj;
  };


  return Limbo;
})();
<commit_msg>change argument order, set .constructor, and pass in slice<commit_after>var Limbo = module.exports = (function(slice) {
  function Limbo(_superclass, definition) {
    function Noop() {}

    if (typeof definition === 'undefined') {
      definition = _superclass;
      _superclass = Object;
    }
    else if (typeof _superclass.prototype === 'object') {
      Noop.prototype = new _superclass;
    }

    var proto = Noop.prototype
      , _super = _superclass.prototype
      , extensions = {}
    ;

    proto.constructor = Noop;

    if (typeof definition === 'function') {
      extensions = definition.call(Noop, proto, _super, Noop, _superclass);
    }
    else if (definition && typeof definition === 'object') {
      extensions = definition;
    }

    if (extensions && typeof extensions === 'object') {
      for (var ext in extensions) {
        if (extensions.hasOwnProperty(ext)) {
          proto[ext] = extensions[ext];
        }
      }
    }

    return Noop;
  }

  Limbo.create = function create(klass /*, args... */) {
    var args = slice.call(arguments, 1)
      , obj = new klass
    ;

    if (typeof obj.init === 'function') obj.init.apply(obj, args);

    return obj;
  };

  return Limbo;
})([].slice);

{'fraction_non_alphanumeric': 0.13790221479314668, 'fraction_numerical': 0.0008357709987463436, 'mean_word_length': 2.479651162790698, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3881510', 'n_tokens_mistral': 720, 'n_tokens_neox': 703, 'n_words': 185}