Skip to content

Instantly share code, notes, and snippets.

@itsMapleLeaf
Last active July 15, 2021 18:15
Show Gist options
  • Save itsMapleLeaf/5c114efd1c2e2f392fda14949763e693 to your computer and use it in GitHub Desktop.
Save itsMapleLeaf/5c114efd1c2e2f392fda14949763e693 to your computer and use it in GitHub Desktop.

response to https://gist.github.com/amcdnl/b52e9dd11850eeb8de8f

Not Standard

TS abides strictly by ES standards and doesn't add any new syntax features for the language. this is a pivot from how things worked back then, and a good one. TS still has some language features left behind from "the olden days", but they're largely avoided (outside of Angular, but that's more of a criticism at angular than TS)

Not Community Driven

I don't have a strong opinion when it comes to how "community driven" some projects should be, but TS is receiving fast progress on things people really like, so I'd say the project is managed well

Types in a non-typed language is hard

true statement, but I think they've done a really good job given the limitations, and this isn't really a reason to just not try

Babel is way better

not an apt comparison, two different tools for two different purposes

TypeScript Definitions

TS's inference on JS can be improved, but there's only so much info a program can assume without extra help from a developer. still, you can get really good JS inference anyway with the right settings, especially with JSDoc

No idea what language features I can use

this one's kind of fair. the rule is "stage-3 + decorators" but I don't know of anywhere this is stated explicitly. still, the rule has been solidly followed AFAICT

They lie

completely inflamatory, and also, "having to put any everywhere" is just misusage of TS, don't need to explain that one too much

What about flow?

they make a point that flow is safer because you can just run babel-remove-flow-types, but you'll get a similar effect with compiling TS, especially now that TS and JS are much more closely aligned

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment