Aspects of Natural Language Generation