This repository was archived by the owner on Jun 15, 2023. It is now read-only.
This repository was archived by the owner on Jun 15, 2023. It is now read-only.
Plan for JSX V4. #521
Closed
Description
With the introduction of more general structural typing https://forum.rescript-lang.org/t/ann-more-strict-checks-in-missed-labels/2117 most of the JSX ppx could be removed. In particular, one could just use functions from the language directly.
A plan would require
- Describe precisely how it works. (See https://github.com/rescript-lang/syntax/pull/517/files#diff-c97c31727a92fde7cad7a258699c4d6bf67cba2654d93992c758bf94df5f8411).
- Evaluate whether it is true that one can just "use the language" to define functions for components. Find out if there are issues and what these are.
- Figure out a solution to the expressivity problem of
@obj
records: JSX V4 WIP #517 (comment) - Check that hover and jump to location in the editor work.
- Check that type error messages report the desired location.
- Explore JSX preserve mode (i.e. output jsx syntax in the generated code). See Explore JSX preserve mode (i.e. output jsx syntax in the generated code) #539.
- Explore React's own jsx transform (https://forum.rescript-lang.org/t/jsx-v4-next-rescript-react-0-10-x/3431/10)
- Plan a migration path. And what about dependencies.
- Engage with the community for feedback. This would be a major visible change. (See forum post)
Metadata
Metadata
Assignees
Labels
No labels