Figure 1.
Generality Wheel. Expanding Rosetta’s functionality in one area (Energy Terms, Chemical Composition, or Algorithms) should not require an expansion to the other areas. The areas should be protected from each other through the use of generic interfaces.