This talk explores how language technology might be used to support software internationalisation. We begin by defining what language technology - the use of computational techniques to process and manipulate human language - is in the large, and describing briefly the various processing steps involved in most language technology applications. We then go on to examine three areas of language technology that might provide some utility in software internationalisation:
¥ Machine translation, which takes a source text in one language and produces a text in another specified target language: there are existing machine translation solutions for many language pairs in the world, but the quality of the results is extremely variable.
¥ Controlled language processing, which defines a restricted and well-defined subset of a natural language like English: documents written in a controlled language can be more easily manipulated by natural language processing tools, making it easier, for example, to produce high quality translations.
¥ Knowledge authoring tools, where the idea is to start with a representation of content that is independent of any particular natural language, and then to use natural language generation techniques to automatically render this content in the hosen natural languages.
In each case, we will attempt to provide a realistic appraisal of the potential for the technologies involved.