Comment by Waterluvian
3 hours ago
I think with ES6 and newer things really cleaned up and now we’re left with avoidable ugly parts, of which every language has.
Before when you didn’t even have strict equality checking, for example, you were forced to know about implicit type casting.
Getting on the same page with modules also helped a lot. Typescript directly in Node is great. Look mom, no build system!! I’m just hoping one day browsers will accept TS the same way.
> I’m just hoping one day browsers will accept TS the same way.
Wouldn't that be a direct kill of JS?
TS is JS just with stuff on top so it can’t really ever kill JS. The way Node does it is to just ignore the type notations in a TS file, making it valid JS. Does mean you can’t use things like enums but worth the price.
Did C++ kill C?
When did JS not have strict equality?
1995-1999. Strict equality was introduced in ES3 which was first released in December 1999.
https://www-archive.mozilla.org/js/language/e262-3.pdf
You still need a compiler for TSX, though. There's also a tiny bit of non-erasable Typescript (enums).
There’s a mode to pretend those features don’t exist and not allow them. Meaning it gets far simpler to just type elide rather than any actual compilation effort. I think this idea is getting more popular and it would be kinda nice if TS committed to not adding any more features like that.
TS has committed to not adding any more features like that. Features only get added when they reach a certain threshold on the TC39 standardisation track.