“…For example, when the style was initially formulated, component communication ports were given an important role, despite the fact that each component always had a fixed number of ports (one on the top and one on the bottom) [32]. The original C2 framework tried to stay true to this vision, but eventually we realized that, unlike other styles such as Weaves [8], ports do not play an active role in a C2-style architecture. Therefore, explicit ports created unnecessary overhead in implementations and were removed in the subsequent frameworks.…”