$H関数

【抜粋】
function $H(object) {
  var hash = Object.extend({}, object || {});
  Object.extend(hash, Enumerable);
  Object.extend(hash, Hash);
  return hash;
}

空のオブジェクトに、引数object(nullの場合は空オブジェクト)を継承させています。これにより引数objectの複製を得ます。これにEnumerableクラスとHashクラスを継承させ、返却します。

複数のクラスを「継承する」というのも変ですが。そういう意味では言葉そのままの「拡張する」というほうが正確なのかもしれません。(もう修正するのはツライのでこのままいきますが^^;)

前述Hashクラスでかなり説明してしまったので、そちらを参照してください。