Hacker News new | past | comments | ask | show | jobs | submit login

Seems like maybe there's a balance here. On one hand, JS was designed with a particular vision (prototypal inheritance, etc.) and it's good for programmers to understand and follow that vision. On the other hand, even JS experts admit that there are plenty of warts and legacy oddities in JS, and we'd do a lot of things differently if designing the language from scratch. I guess it's unclear where `this` fits in. It's closely tied to the nice elegance of the language, but it's also a huge source of beginner-unfriendliness. IMO it could at the very least have some ease-of-use improvements.

JS has gone through lots of careful language changes (strict mode, arrow functions, classes), and tools like ESLint and TypeScript help limit confusing parts of the language, and I think it's worthwhile to put at least some effort into making JavaScript better rather than just accepting it.

Fair enough, but I don't think avoiding "this" altogether in order to pretend Javascript is only a functional and not also a prototypal language helps. Doing so is just going to make the language more confusing than it really is.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact