Closed Vasile-Peste closed 1 year ago
Hi, @Vasile-Peste proposal is still alive and making progress. In fact, it was presented during at TC39 last March. The champions behind the proposal are actively working on its development.
The champions are considering initiating a recurrent community meeting to ensure better alignment and gather valuable feedback. This would allow stakeholders and community members to share their thoughts, suggestions, and expectations regarding the proposal.
Hi, @Vasile-Peste proposal is still alive and making progress. In fact, it was presented during our latest meeting at TC39. The champions behind the proposal are actively working on its development.
The champions are considering initiating a recurrent community meeting to ensure better alignment and gather valuable feedback. This would allow stakeholders and community members to share their thoughts, suggestions, and expectations regarding the proposal.
This is good news! The community meeting is a great idea as I see divided (community) feedback about this proposal, I strongly hope it's going to be pursued
Why do we need this when we have JSDoc? I'd rather have a more compact JSDoc syntax and not litter the code with tons of new syntax. The JS engine will probably be slower too having to parse all these "comments". For what? Developer OCD?
Exactly. The proposal's first sentence reads:
This proposal aims to enable developers to add type annotations to their JavaScript code, allowing those annotations to be checked by a type checker that is external to JavaScript.
You can already do this today by just using JSDoc to annotate your project and use TypeScript to type-check it.
The proposal has not been updated since the march 2022 Meeting of TC39, so I have consulted the meeting notes which made me realise this proposal probably isn't going anywhere, giving that I see no effort in updating this repository I assume this proposal is probably dead.
Here are the key points of the meeting:
Which in short means:
Unclear Goal: There is a lack of clarity regarding the goal of the proposal. Some participants question whether the aim is to add TypeScript to the language or to introduce types as comments in general. Without a clear understanding of the problem being addressed, it becomes difficult to evaluate the proposed solution. Syntax Complexity and Compatibility: The proposed syntax is seen as overly complex and closely tied to TypeScript. Participants worry that introducing such a significant amount of new syntax could lead to confusion and forking of the TypeScript language. They argue that instead of creating hybrid solutions, it would be simpler to have a flag or option that enables full TypeScript syntax for those who want to use it. Potential Issues with Existing TypeScript Codebases: Concerns are raised about the impact on existing TypeScript codebases if this proposal is implemented. If TypeScript introduces new syntax that falls outside the scope of this proposal, it could lead to code failures or the need for compilation. Participants worry that this could hinder the ability to import files or lead to runtime errors.
Anti-Competitive Behavior: Some participants express concerns that giving special treatment to TypeScript and standardizing it as part of JavaScript could be viewed as anti-competitive. They argue that JavaScript should remain a language open to multiple type-checkers and not favor any particular type-checking solution. They highlight quotes from the proposal discussion that emphasize the aim of keeping all types of code as JavaScript programs, rather than promoting one specific type-checker over others. The fear is that providing exclusive support to TypeScript could limit innovation and hinder the development of alternative type-checking solutions, creating a less competitive environment in the JavaScript ecosystem.
Syntax Complexity and Compatibility: The proposed syntax is seen as overly complex and closely tied to TypeScript. Participants worry that introducing such a significant amount of new syntax could lead to confusion and forking of the TypeScript language. They argue that instead of creating hybrid solutions, it would be simpler to have a flag or option that enables full TypeScript syntax for those who want to use it.
Potential Issues with Existing TypeScript Codebases: Concerns are raised about the impact on existing TypeScript codebases if this proposal is implemented. If TypeScript introduces new syntax that falls outside the scope of this proposal, it could lead to code failures or the need for compilation. Participants worry that this could hinder the ability to import files or lead to runtime errors.
At this point, it's possible to have any insight from the authors of the proposal?