![]() |
Horatio: A Middle-sized NLP Application in Prolog
Archibal Michiels
|
Click here for reviews.
There is no dearth of books – some of them excellent – on Prolog and Natural
Language Processing. But they tend to remain at an elementary level and
to discuss only short introductory programs. None of them describes and gives
the full code of a medium-sized application.
|
Reviews
N. Curteanu (Iasi), Zentralblatt für Mathematik und ihre Grenzgebiete 863/97, p. 477. HORATIO is a wonderful toy: a large and complex Prolog program devoted for both beginners and experts in natural language (NL) processing (NLP) and Prolog programming. Archibal Michiels provides the complete Prolog code for the NL analysis (HORATIO) and generation (HORAGEN), this fact offering the unique opportunity for intensive learning of Prolog language, in the context of NL grammar design, parsingstrategy, lexicon representation and organization, generation algorithm, interaction between components of the grammar, various coding idioms etc. The emphasis throughout the book falls on NL grammar writing, using standard Prolog and standard DCG notation, and dealing with parsing and generation of "linguistic" rather than "real-life" NL sentences. The interest of HORATIO focuses on explaining the strategies, methods, and solutions, and how they are linked the NLP tasks. HORATIO is a lexicon- driven and surface (thus syntactically) oriented system, the depth level of its parses being more adequate to tasks such as machine translation between fairly closely related NLs. The transformation of HORATIO from a pedagogical tool into a real-world system could be an exiting challange to any NLP, Prolog team. Michael A. Covington (University of Georgia), Computational Linguistics Vol. 22 Number 2 (1996), pp. 281-282.
HORATIO is a moderately-wide-coverage English parser developed in Arity Prolog on
a PC and based on Michael McCord's slot
grammars. Its output includes explicit grammatical relations such as subject and object, and some lexical disambiguation is
performed by using argument properties such
as human and abstract. Performance is respectable; on my 66-MHz 486, each sentence
in the test suite took no more than a few
seconds, including complex sentences such
as Devito manages a programmer Abrams interviewed and Browne hired. (1) The code may also be downloaded free of charge from http://engdep1.philo.ulg.ac.be.
|