- Grammar checker
computingterms, a grammar checker is a program, or part of a program, that attempts to verify written text for grammatical correctness. Grammar checkers are most often implemented as a feature of a larger application, such as a word processor.
The implementation of a grammar checker makes use of
natural language processing.
The earliest “grammar checkers” were really programs that checked for punctuation and style problems, rather than finding many actual grammatical errors. The first system was called "Writer’s Workbench", and was a set of writing tools included with
Unixsystems as far back as the 1970s. The whole "Writer’s Workbench" package included several separate tools to check for various writing problems. The ‘diction’ tool checked for wordy, trite, clichéd or misused phrases in a text. The tool would output a list of suspect phrases, and provide suggestions for improving the writing. The ‘style’ tool analyzed the writing style of a given text. It performed a number of readability tests on the text and output their results, and it gave some statistical information about the sentences of the text.
Aspen Software of
Albuquerque, NM, released the earliest version of a diction and style checker for personal computers, "Grammatik", in 1981. "Grammatik" was first available for a Radio Shack TRS-80, and soon had versions for CP/Mand the IBM PC. Reference Software of San Francisco, CA, acquired "Grammatik" in 1985. Development of "Grammatik" continued, and it became an actual grammar checker that could detect writing errors beyond simple style checking.
Other early diction and style checking programs included "Punctuation & Style", "Correct Grammar", and "RightWriter". While all the earliest programs started out as simple diction and style checkers, all eventually added various levels of language processing, and developed some level of true grammar checking capability.
Until 1992, grammar checkers were sold as add-on programs. There were still a large number of different word processing programs available at that time, with
WordPerfectand Microsoft Wordthe top two in market share. In 1992, Microsoftdecided to add grammar checking as a feature of Word. Microsoft licensed CorrecText, a grammar checker from Houghton Mifflinthat had not yet been marketed as a standalone product. WordPerfect answered Microsoft’s move by acquiring Reference Software, and the direct descendant of "Grammatik" is still included with WordPerfect.
Microsoft’s decision to integrate grammar checking has proven disastrous for grammar checking software in general. From 1985 until 1992, several companies that had grammar checking software were making great improvements in grammar checking ability and accuracy from year to year. Microsoft’s move essentially put an end to further development. As late as 2006, the grammar checking capabilities of Microsoft Word and WordPerfect are not significantly different from what was available in 1992.
Because of Microsoft's dominating position, it has been unrealistic for any other company to put resources into further development of grammar checkers for the English language. There are, however, a couple of
open-source softwareprojects developing grammar checking technology, including Abiwordand LanguageTool (associated with OpenOfficeand LyX[ [http://wiki.lyx.org/Tools/LyX-GrammarChecker LyX wiki | Tools / LyX Grammar Checker ] ] ). There have been no published studies comparing these tools with other commercial grammar checkers.
The earliest writing style programs checked for wordy, ,
clichéd or misused phrases in a text. This process was based on simple pattern matching. The heart of the program was a list of many hundreds or thousands for phrases that are considered poor writing by many experts. The list of suspect phrases included alternate wording for each phrase. The checking program would simply break text into sentences, check for any matches in the phrase dictionary, and flag suspect phrases and show an alternative.
These programs could also perform some mechanical checks. For example, they would typically flag doubled words, doubled punctuation, some
capitalizationerrors, and other simple mechanical mistakes.
True grammar checking is a much more difficult problem. While a
computer programming languagehas a very specific syntax and grammar, this is not so for natural languages. Though it is possible to write a somewhat complete formal grammarfor a natural language, there are usually so many exceptions in real usage that a formal grammar is of minimal help in writing a grammar checker.
One of the most important parts of a natural language grammar checker is a
dictionaryof all words in the language, along with the part of speech of each word. The fact that natural words can take many different parts of speech greatly increases the complexity of any grammar checker.
A grammar checker will find each sentence in a text, look up each word in the dictionary, and then attempt to
parsethe sentence into a form that matches a grammar. Using various rules, the program can then detect various errors, such as agreement in tense, number, word order, and so on.
It is also possible to detect some stylistic problems with the text. For example, heavy use of
passive voiceis not considered a good writing style. After a sentence is parsed, it is possible to detect passive voice, and rewrite the sentence in proper form.
The software elements required for grammar checking are closely related to some of the problems that need to be solved for
voice recognition software. In voice recognition, parsing can be used to help predict which word is most likely correct based on part of speech and position in the sentence. In grammar checking, the parsing is used to detect words that fail to follow proper grammar usage.
* [http://www.languagetool.org/ LanguageTool] - a free
open-source softwaregrammar checker for English, German, Polish, and others
** [http://community.languagetool.org/ Try LanguageTool online]
* [http://papyr.com/hypertextbooks/grammar/gramchek.htm Evaluating Grammar Checkers] An academic evaluation of grammar checkers
* [http://faculty.washington.edu/sandeep/check/ A Demonstration of the Futility of Using Microsoft Word’s Spelling and Grammar Check]
Wikimedia Foundation. 2010.