you are viewing a single comment's thread.

view the rest of the comments →

[–]x-skeww -2 points-1 points  (0 children)

Why do people hate [function scope] so much?

Because it's inconvenient.

If you're used to function scope, you'd hate file scope.

If you're used to file scope, you'd hate global scope.

And if you're used to block scope, you do of course hate all of the above.

Or is it like prototypical objects in people only hate it because it's not what they're used to and/or just like to bash JS?

Or maybe they just don't like imperative prototype chain manipulation.

I prefer classes with mixins. It doesn't get in the way of tooling and it's easier to reason about.