The constant improvements in device integration, the development of new technologies
and the emergence of new design techniques call for flexible, maintainable
and robust software tools. The generic nature of compiler-compiler systems,
with their semi-formal specifications, can help in the construction of those tools.
This thesis describes the Wright editor generator which is used in the synthesis
of language-based graphical editors (LBGEs). An LBGE is a programming
environment where the programs being manipulated denote pictures. Editing
actions can be specified through both textual and graphical interfaces. Editors
generated by the Wright system are specified using the formalism of attribute
grammars.
The major example editor in this thesis, Stick-Wright, is a design entry system
for the construction of VLSI circuits. Stick-Wright is a hierarchical symbolic
layout editor which exploits a combination of text and graphics in an interactive
environment to provide the circuit designer with a tool for experimenting with
circuit topologies. A simpler system, Pict-Wright: a picture drawing system, is
also used to illustrate the attribute grammar specification process.
This thesis aims to demonstrate the efficacy of formal specification in the
generation of software-tools. The generated system Stick-Wright shows that a
text/graphic programming environment can form the basis of a powerful VLSI
design tool, especially with regard to providing the designer with immediate
graphical feedback. Further applications of the LBGE generator approach to
system design are given for a range of VLSI design activities