> I don't understand what this solves... source maps make debugging the compiled typescript easy in a web browser, and on the server you can use things like ts-node to run the typescript without compiling.
As much as I love TS, integrating it into build or dev pipelines has repeatedly caused big headaches. Multi-stage source maps don't always get wired up correctly. Tools may understand TS or ESM, but not both.
I would very much like this proposal to get ratified, so that my pipelines can become simpler and more robust, and so I don't need TS flavors of normal JS tools.
> Having type "comments" seems like way less utility compared to what typescript offers
The proposal isn't taking away anything that TypeScript offers. It lets TypeScript layer its value (types enforcement) on top of plain .js files, without getting in between the source code and tools / runtimes.
You still aren't going to ship all those unnecessary types in your production app, so you'll be creating a complicated pipeline anyway. The big difference here would be that your pipelines will be radically different, so you wouldn't know about random breakages in the development pipeline until you deployed to production.
More importantly, this doesn't add all of TS, so you'd still have to run those tools and nothing changes except that JS is now locked in to a syntax that may or may not be the best for an actual type system in the future.
As much as I love TS, integrating it into build or dev pipelines has repeatedly caused big headaches. Multi-stage source maps don't always get wired up correctly. Tools may understand TS or ESM, but not both.
I would very much like this proposal to get ratified, so that my pipelines can become simpler and more robust, and so I don't need TS flavors of normal JS tools.
> Having type "comments" seems like way less utility compared to what typescript offers
The proposal isn't taking away anything that TypeScript offers. It lets TypeScript layer its value (types enforcement) on top of plain .js files, without getting in between the source code and tools / runtimes.