Backbone is the component language at the heart of Evolve. Essentially, it is a compact domain-specific language for describing components, how they are wired up, and how they change when they are reused or evolved.
An example component definition is shown below, with the graphical view on the left and the Backbone textual description on the right. The text form shows that parts are added, and connected up.
We can use Backbone to Evolve this component. Below is the graphical view of an evolution, along with its textual counterpart. Note that evolution is always expressed as a combination of resemblance and replacement.