This paper presents a number of linguistic and computational issues identified during the
implementation of a general use grammar checker for contemporary Brazilian Portuguese,
ReGra, that has been incorporated in the word processor REDATOR by Itautec/Philco
(Brazil). Two main strategies were employed in the implementation of correction rules: an
error-driven, localist approach based on the identification of patterns indicative of grammatical
mistakes; and a more generic approach that requires automatic syntactic analysis. In this
discussion, particular emphasis is given to the development of a parser based on a phrase
structure grammar comprising over 600 production rules. As for the computational
performance, ReGra permits texts to be revised at a rate of ca. 200 words per second.