Skip to content

Commit 9f35087

Browse files
Add the tuples PR
1 parent 89bd505 commit 9f35087

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

docs/blog/_posts/2020-06-16-25th-dotty-milestone-release.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
22
layout: blog-page
3-
title: Announcing Dotty 0.25.0-RC2 - speed-up of givens
3+
title: Announcing Dotty 0.25.0-RC2 - speed-up of givens and change in the tuple API
44
author: Anatolii Kmetiuk
55
authorImg: /images/anatolii.png
66
date: 2020-06-16
77
---
88

9-
Hello! We are excited to announce 0.25.0-RC2 of Dotty. In this version, following feedback of the community, we have improved compilation speeds when programming with givens. We have also made progress towards better cross-compilation of macro definitions between Scala 2 and Scala 3.
9+
Hello! We are excited to announce 0.25.0-RC2 of Dotty. In this version, following feedback of the community, we have improved compilation speeds when programming with givens. We have also made some improvements to the tuple API.
1010

1111
You can try out this version right now, from the comfort of your SBT, by visiting the [home page](https://dotty.epfl.ch/) and scrolling down to the "Create a Dotty Project" section.
1212

@@ -15,6 +15,17 @@ Alternatively, you can try this version of Scala online via [Scastie](https://sc
1515
Enjoy the ride🚀!
1616

1717
<!--more-->
18+
# Dedicated type for empty tuples
19+
We have added a type `EmptyTuple` to represent empty tuples. Previously empty tuples were represented by `Unit`. This change was done so that all the tuples are a subtype of `Product`. Now, tuples have the following type hierarchy:
20+
21+
```scala
22+
Product -- Tuple -+- EmptyTuple
23+
|
24+
+- NonEmptyTuple -- *:[Head, Tail <: Tuple]
25+
```
26+
27+
This change impacts existing typeclass derivation codebases in that they now should use `EmptyTuple` instead of `Unit` in the tuple context.
28+
1829
# Avoid excessive slowdowns when suggesting missing imports in error messages
1930
Dotty brings to the user an enhanced error reporting when it comes to programming with givens. This better error reporting, however, proved to be a trade-off. Sometimes it takes an unreasonable amount of time and space to compute a quality suggestion to the end user.
2031

0 commit comments

Comments
 (0)