Concatenative inheritance predates JS. There were research languages in the 80s that had this model as well.<p>This book (2003) has a good summary of the space:<p><a href="http:&#x2F;&#x2F;www.amazon.com&#x2F;Prototype-Based-Programming-Concepts-Languages-Applications&#x2F;dp&#x2F;9814021253" rel="nofollow">http:&#x2F;&#x2F;www.amazon.com&#x2F;Prototype-Based-Programming-Concepts-L...</a><p>There&#x27;s a diversity of approaches. Self uses prototype delegates. The language I learned on (LambdaMOO) has a single-delegate (&quot;parent&quot;) model. There have been research languages that used pure concatenation. And even ones that had early binding and static types.