But we have already seen, in chapter 2, another way of going about things, that taken by ELIZA. In this method, we list not all the possible sentences in the language, but the possible patterns that sentences in English can have. This allows us to make far more general statements about the form of grammatical sentences in English, and to distinguish many grammatical strings from non-grammatical ones. For example,
[my ??words drinks ??more_
words]
and
[you == me]
which match, respectively, the sentences
my aunt Mabel drinks pina colada
and
you never listen to me
seem plausible patterns for sentences in English, while
[drinks ??words my ??more_
words]
and
[== you me]
do not, and would not be expected to match well-formed English sentences. Since sentences tend to be patterned in a small number of fairly regular ways in English, we might guess that a list of such patterns need not be cumbersomely vast.
Unfortunately, as we saw in chapter 2, Eliza does not much care what words fill up the spaces in the patterns marked by the variable ??something and by the symbol ==. The program is just as able to accept gibberish in those spaces as to accept meaningful English. Furthermore, this `garbage in, garbage out' principle allows Eliza to respond with absolute nonsense. For example, if the form of Eliza's response to
[my ??words drinks ??more_
words]
is
[tell your^^
words to stop drinking^^
more_
words]
and if the current input is
[my collection of drinks is legendary]
then the nonsensical output will be
[tell your collection of to stop drinking is legendary]