The roots of graphical user interfaces started with research done at the Xerox Palo Alto 
Research Center (PARC).

Development tools and languages evolved to let developers write user interfaces by choosing
from pallets of components to specify a hierarchy of of containers (like panels), and
components within the container (like buttons and input widgets).<small><sup>*</sup></small>

In this style of coding, components are high-level abstractions where developers configure the
component, and the framework handles translating that to the low-level native calls.

<br><br>
<small>*
Back in the 1980s and 1990s developers used tools like Delphi and PowerBuilder.</small>

