Component Programming in D

“Composability or the ability to write highly reusable software using a data source → algorithm → data sink model is a feature that depends heavily on language support. New facilities in D now make this possible…”

“The goal of writing reusable software is as old as programming, and is so well ingrained into programmers that we take it as an axiom. It’s accepted and non-controversial. Of course, we all strive to produce reusable software, but as I look back on 35 years of programming, I note with chagrin that practically none of the code I’ve written has been usable in another project. I will “reuse” code by copy-paste-modify, but that’s cheating, and even that doesn’t happen too often…”

http://www.drdobbs.com/article/print?articleId=240008321&siteSectionName=architecture-and-design