Usage of "is when"
I, too, was taught not to use "is when" and "is where" to define words. I like this entry from "The Careful Writer," by Theodore M. Bernstein (an old book, but worth owning):
WHEN AND WHERE
One school kid will say, "Addition is when you add two and two." Another will say, "Addition is where you add two and two." Both are using a juvenile construction. Most authorities agree that the construction is undesirable, but they do not agree on why this is so. One advances the theory that when (and presumably where also) cannot be used to join a clause to a noun—there must be two full clauses. It is perfectly proper, however, to say, "Noon is when the sun is directly overhead," and "Home is where Affection calls." Perrin* says rightly that the objection to the when and where clauses as used by juveniles is stylistic rather than grammatical and comes from their overuse in amateurish definitions. He might have gone a step further and said that the stylistic objection arises from the use of when and where in situations where their meanings do not apply. When, for instance has a temporal meaning, and it does not apply in a sentence like this: "The 'hard-ticket policy' is when they up the price of admission to a $3.50 top and sell reserved seats to performances that are given only twice a day." That kind of sentence is not suitable in mature writing.
(*Perrin is Porter G. Perrin, author of "Writer's Guide and Index to English" and a contemporary of Bernstein's. Bold emphasis is mine.)
I have no idea what Mr. Bernstein's last example sentence means (and it is quaint to think of admission to anything being $3.50), but I agree that the objection to this kind of construction is largely stylistic. I suppose your teacher could have been trying to help you develop a more mature writing style.
There are two questions you could ask: 1. is this acceptable?, and 2. if not, why not?
It is fine in casual writing, but it may not be appropriate in formal writing; it sounds a bit too informal for a formal definition.
I can only speculate, but I suspect that there is a certain discrepancy between the word (debate) and the definition (when...). A debate is an (inter)action, while a clause starting with when describes a point or period of time. It is like saying a debate is a time when a group of people argue: a debate is not really a time. It would be better to use a noun that can be equated to debate, like this:
A debate is a structured exchange of arguments.
A quick way to circumvent this (minor) issue is by loosening up the equation:
When a group of people get together and argue for fun, this is commonly called a debate.
The intervention of this breaks the direct equation. There is no real discrepancy here, because this does not refer to the exact content of the when clause, but to a somewhat vaguer, implicit antecedent. The vagueness still makes it less suitable for a formal definition.