You know, this idea was a loser in 1989, but it just might work today.” Experience with stuff that didn’t work can be way more valuable than experience with ideas that worked at the time. This would be how Ruby got its yield keyword. Matz knew about a language called CLU, invented in 1974-5 by Barbara Liskov and her students (Yes, she is the Liskov of the Liskov Substitution Principle). Matz borrowed yield from CLU. Was CLU a success in 1975? Perhaps not in the popularity contest. But knowing about this “old failure” allowed Matz to use its ideas in a new way to help make Ruby a “new success.

2009-01-21/ at master from raganwald’s homoiconic - GitHub