Specifying framework constraints with FCL

Daqing Hou, H. James Hoover, Piotr Rudnicki · Conference of the Centre for Advanced Studies on Collaborative Research · 2004

Object-oriented application frameworks are often misused because application developers do not know how the original framework designers intend their frameworks to be used. The goal of Framework Constraint Language (FCL) is to help detect errors in framework usage. FCL captures the intended usage of frameworks through framework constraints that describe the syntactic structures that frameworks impose on the code of framework-based applications. Framework constraints can be regarded as framework-specific typing rules conveyed by the FCL specifications and enforced by techniques analogous to those of conventional type checking. In essence, FCL is a first-order logic of the syntactic structure of programs. The feasibility and expressiveness of FCL have been evaluated by applying it to parts of frameworks, such as MFC (Microsoft Foundation Classes), and design rules such as Law of Demeter. The current version of the FCL language and associated checker is targeted at C++ frameworks.

Read the paper · More papers on PaperTik