title: Kyle Simpson's OLOO Pattern vs Prototype Design Pattern
body: <p>Does Kyle Simpson's &quot;OLOO (Objects Linking to Other Objects) Pattern&quot; differ in any way from the the Prototype design pattern? Other than coining it by something that specifically indicates &quot;linking&quot; (the behavior of prototypes) and clarifying that there's no to &quot;copying&quot; happening here (a behavior of classes), what exactly does his pattern introduce?</p>
  <p>Here's <a href="https://github.com/getify/You-Dont-Know-JS/blob/1st-ed/this%20%26%20object%20prototypes/ch6.md#delegation-theory" rel="nofollow noreferrer">an example of Kyle's pattern</a> from his book, &quot;You Don't Know JS: this &amp; Object Prototypes&quot;:</p>
  <pre><code>var Foo = {
      init: function(who) {
          this.me = who;
      },
      identify: function() {
          return &quot;I am &quot; + this.me;
      }
  };
  
  var Bar = Object.create(Foo);
  
  Bar.speak = function() {
      alert(&quot;Hello, &quot; + this.identify() + &quot;.&quot;);
  };
  
  var b1 = Object.create(Bar);
  b1.init(&quot;b1&quot;);
  var b2 = Object.create(Bar);
  b2.init(&quot;b2&quot;);
  
  b1.speak(); // alerts: &quot;Hello, I am b1.&quot;
  b2.speak(); // alerts: &quot;Hello, I am b2.&quot;
  </code></pre>