next up previous contents
Next: Modular Definition of FDs Up: FUF: the Universal Unifier Previous: The Special Attribute CAT:

      
Modular Organization of Grammars: Def-alt and Def-conj

A large FUG, like many other large computer programs, becomes difficult to read and maintain when its size increases. The size of a FUG is best measured by counting the number of disjunctions it contains, as discussed in Chapter [*].   The depth of embedding of the disjunctions is also an indication of the complexity. The number of branches in the disjunctive normal form of the grammar accounts for this embedding but is in general not very informative. For example, the grammar of FUF contains 580 disjunctions and has a disjunctive normal size of 1029. Another more conventional measure of the complexity of the grammar viewed as a program, is the number of lines of code: 9,500 lines for a total of 290,000 characters. By all measures, such a grammar is a large program. So the well-known problems of size management in software engineering become an issue for large FUGs: ease of maintenance, readability, modularity etc.



 
next up previous contents
Next: Modular Definition of FDs Up: FUF: the Universal Unifier Previous: The Special Attribute CAT:
Michael Elhadad - elhadad@cs.bgu.ac.il