However, object-oriented programming languages need to be modified for best use in hardware description. As this article will show, we can extend the mechanisms provided by object-oriented languages to simplify the description of hardware; the extensions both hide implementation detail of data structures from the user and provide features specific to hardware description. We can also add new mechanism particular to hardware design, including facilities for measuring a hardware implementation and utilities for maintaining the consistency of data stored for a design.