so, yeah, here’s the explanation of things. the following is a complete, grammatically correct english sentence:
buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo.
there are a number of convenient reasons that this works. first, “buffalo” can be used in several ways: the most obvious, of course, is the bison-like animal. it is also the plural form of the same word (“buffaloes” and “buffalo” are equally valid in that regard). it is also the name of a city, which in turn can be used as an adjective. finally, “to buffalo” is a transitive verb meaning to intimidate, deceive, or confuse.
using “buffalo” in the plural sense works well for two reasons: first, a plural noun need not be preceded by an article in the same way a singular noun would (“a buffalo drives” but “buffalo [pl] drive”). secondly, the conjugation of the verb “buffalo” for the plural present indicative is just “buffalo,” as opposed to “buffaloes” for the singular (“the dog buffaloes me” but “dogs buffalo me”).
then, using the city buffalo as an adjective works nicely too; “buffalo buffalo” easily means [the animal] buffalo from [the city] buffalo.
even having established all that, build up the sentence is not immediately obvious. to make it easier to understand, i will build up another sentence the same way, using “london” as the city/adjective, “pigs” as the animal, and “kick” as the verb.
don’t ask me why.

so, we’ll start simple. “pigs kick pigs.” that may or may not be true, but it’s plainly enough a vaild sentence. similary, we can say that “buffalo buffalo buffalo” — that is, some buffalo might fool or deceive other buffalo, or something.
here’s where we add the last little quirk. a relational clause consisting of a noun and verb (and their respective modifiers) can be used to modify a noun without affecting the gramatical structure of the sentence. usually the word “that” is used to indicate the presence of the relational clause, for clarity’s sake, but it is not necessary. for example, “the colors that you picked are lovely” is equivalent to “the colors you picked are lovely” without requiring the use of “that” to denote the clause. going back to our simple sentence, “pigs kick pigs,” we can say “pigs [that pigs kick] kick pigs,” or, equivalently, “pigs pigs kick kick pigs.” that alone can be quite confusing if you did not know how the sentence was built. using the “buffalo” words, the resulting equivalent sentence would then be “buffalo buffalo buffalo buffalo buffalo.”
but why stop there? anywhere we see a noun, it’s perfectly acceptable to modify that noun with an adjective. using the name of a city as an adjective, “london pigs” would mean “pigs from london” just as “buffalo buffalo” would mean “buffalo from [the city of] buffalo.” so, “pigs pigs kick kick pigs” becomes “london pigs london pigs kick kick london pigs,” and therefore “buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo.”
this is where it really gets crazy. there’s no reason we can only modify the first subject noun with a relational clause; it makes just as much sense (none at all?) to say that “pigs kick pigs [that pigs kick]” as it does to say “pigs [that pigs kick] kick pigs.” or, to use both at the same time, “pigs [that pigs kick] kick pigs [that pigs kick]” becomes “pigs pigs kick kick pigs pigs kick.” reinserting the city-adjective, we have “london pigs london pigs kick kick london pigs london pigs kick.” or .. there are a bunch of pigs from london that get kicked by other pigs from london that all in turn just kick each other. must be something in the air. finally, a similar “buffalo” sentence can be constructed: “buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo buffalo.”
by that last argument, there’s also no reason that the nouns within the relational clauses cannot be likewise modified by relational clauses, as in “pigs [that pigs [that pigs kick] kick] kick pigs.” therefore, a valid english sentence is found in “pigs pigs pigs kick kick kick pigs,” and by extension, it can be shown recursively that a string consisting of any number of “buffalo”s at all is interpret-able as a valid english sentence. in my first post i only went down one level of recursion on each “side” (the subject and object of the simple sentence) but could easily have gone further.
fun fun fun.
buffalo buffalo buffalo.
end::keep quiet no longer, we’ll sing through the day