1. A computer program product comprising one or more computer-readable storage memories comprising code which, when executed by one or more processors, cause the processors to: enable one or more interface definition language (IDL) files to be created, the IDL files describing one or more interfaces between a Web content layout engine and a scripting engine, and the one or more IDL files including: one or more annotation/documentation attributes, one or more global object extension attributes which identify an interface to be grafted as a global object of the scripting engine and extends the global object of the scripting engine, wherein extending the global object of the scripting engine, comprises enabling existence of alternate forms of extended IDL file to support different global objects; one or more code generation attributes, and one or more API availability attributes; receive one or more Property Description Language (PDL) files defining the web content layout engine programming objects and associated APIs and defining one or more dispatch objects to enable communication with the scripting engine; the one or more IDL files and the one or more Property Description Language (PDL) files being used as input to an IDL compiler which generates at least one type system initialization function to bind the content layout engine and the scripting engine and generates code configured to effect a bridge between the content layout engine and the scripting engine.