Skip to content

Commit 941f600

Browse files
Add some sentences to describe the main features
1 parent bf98ba0 commit 941f600

File tree

1 file changed

+31
-10
lines changed

1 file changed

+31
-10
lines changed

_blogposts/2024-01-11-release-11-0-0.mdx

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,24 +10,45 @@ description: |
1010

1111
Almost a year after the last release, ReScript is available in version 11! It marks the second major community-driven release and we are very thankful that there are so many willing contributors who invested their spare time into improving the compiler and its ecosystem.
1212

13+
Use your favorite package manager to install the new compiler release, e.g:
14+
15+
```sh
16+
npm install rescript@11
17+
```
18+
1319
To upgrade your project or to find out if there are any breaking changes that affect you, please follow the [migration guide](/docs/manual/latest/migrate-to-v11).
1420

1521
The complete list of changes can be found [here](https://github.com/rescript-lang/rescript-compiler/blob/v11.0.0/CHANGELOG.md). Let's have a look at the most notable improvements.
1622

17-
## Compiler
23+
## Highlights
1824

19-
Use your favorite package manager to install the new compiler release, e.g:
25+
**Note**: As this release is packed, please refer to the linked blogposts for a detailed breakdown of each of the main new features.
2026

21-
```sh
22-
npm install rescript@11
23-
```
27+
### Customizable Variants
28+
29+
We are introducing new features that will improve interop with JavaScript/TypeScript, including customizable runtime representation of variants, zero cost bindings to discriminated unions, and unboxed variants that can be used to map to things like heterogenous array items and nullable values.
30+
31+
- Blogpost: [Better interop with customizable variants](/blog/improving-interop)
32+
33+
### Enhanced Ergonomics for Record Types
34+
35+
New enhancements for record types: Record Type Spread and Record Type Coercion. Record Type Spread allows one to share subsets of record fields with other record types, making it easier to work with types with lots of fields. And Record Type Coercion makes it easier to safely to convert between records with the same set of fields (or a subset).
36+
37+
- Blogpost: [Enhanced Ergonomics for Record Types](/blog/enhanced-ergonomics-for-record-types)
38+
39+
### First-class Dynamic Import Support
40+
41+
Another addition is first-class support for dynamic imports, which will allow developers to split up and load parts of the app code on demand as separate JS modules to prevent bundle bloat and reduce initial load times for applications.
42+
43+
- Blogpost: [First-class Dynamic Import Support](/blog/first-class-dynamic-import-support)
44+
45+
### Uncurried Mode
46+
47+
This release is also introducing uncurried mode, which is a new default mode that compiles all dependencies as uncurried, and it aims to make it easier for newcomers to use the language.
2448

25-
As this release is packed, please refer to the following blogposts for a detailed breakdown of each of the main new features:
49+
- Blogpost: [Uncurried Mode](/blog/uncurried-mode)
2650

27-
- [Better interop with customizable variants](/blog/improving-interop)
28-
- [Enhanced Ergonomics for Record Types](/blog/enhanced-ergonomics-for-record-types)
29-
- [First-class Dynamic Import Support](/blog/first-class-dynamic-import-support)
30-
- [Uncurried Mode](/blog/uncurried-mode)
51+
## More Features
3152

3253
Furthermore, there are a lot of smaller improvements of which we want to state only a few here.
3354

0 commit comments

Comments
 (0)