**Wow**, thanks everyone for all the input!! I woke up this morning with "classic function" in my head, and immediately worried about confusing people (particularly those for whom English is not their native tongue) with `class`, since it creates a function (the constructor).
So I'm currently leaning toward Raul-Sebastian's "traditional function" (thank you!) since it largely conveys the same meaning as "classic" without the `class` problem. So taking a page from Darien's magnum opus :-) I get: * Traditional function (`function` declaration, `function` expression) * Constructor (for both `class` and `function` when the intent is to create a constructor; draw a distinction when necessary) * Method (some vagueness here, we used to use "method" to refer to traditional functions assigned as object properties, but of course, we got methods with discernable differences -- can't be constructors, can use `super` -- in ES2015) * Arrow function * `async` function * `async` arrow function * Generator function * `async` generator function I think this mostly conveys useful meaning, without getting too pedantic. Again, thank you everyone for the very useful responses! -- T.J. Crowder
_______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss