In this chapter I have presented a simple bottom-up and head-driven generation algorithm, and I discussed some extensions to it. I have argued that head driven bottom-up generators are useful for two reasons. Firstly, the order of processing is geared towards the semantic content of the input, and the information in the lexicon. Secondly, this order of processing puts less restrictions on grammars then top-down generators and Shieber's chart-based bottom-up generator. For grammars written in the spirit of lexical, sign-based linguistic theories head driven bottom-up generators seem especially useful.
The two sources of directedness (semantic information, and lexical information) yield generators with acceptable performance. For example, a version of the generation algorithm has been used successfully in the MiMo2 translation prototype (cf. chapter 5), for Dutch, Spanish and English. Furthermore, the same approach to generation has been used successfully in the CLE system .
Certain analyses raise problems, as I discussed, for the proposed generation regime. In case heads are displaced a head-driven generator may face problems (as we saw in the analysis of verb-second in Dutch). Another problem occurs if the semantics of a phrase is dependent on a phrase which is generated after it, as we saw in the case of an LFG type analysis of raising-to-object. Specific extensions of the head-driven generator can be proposed to handle these problems. A more general solution can be offered in grammars in which operations on strings are allowed that go beyond concatenation. In such grammars analyses of both head-movement and raising-to-object are available which are un-problematic for head-driven generators of the type discussed here. The next chapter argues for such more powerful operations on strings, and provides a head-driven parsing algorithm for grammars employing such operations.