Skip to content

Add the 0.22.0-RC1 release article #8145

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Feb 5, 2020

Conversation

anatoliykmetyuk
Copy link
Contributor

@anatoliykmetyuk anatoliykmetyuk commented Jan 30, 2020

At the beginning of all the prior blog articles, there's this text:

Dotty is the project name for technologies that are being considered for
inclusion in Scala 3. Scala has pioneered the fusion of object-oriented and
functional programming in a typed setting. Scala 3 will be a big step towards
realising the full potential of these ideas. Its main objectives are to

  • become more opinionated by promoting programming idioms we found to work well,
  • simplify where possible,
  • eliminate inconsistencies and surprising behaviours,
  • build on strong foundations to ensure the design hangs together well,
  • consolidate language constructs to improve the language’s consistency, safety, ergonomics, and
    performance.

You can learn more about Dotty on our website.

In this PR, I've taken the liberty to replace it with:

You can try out this version right now, from the comfort of your SBT, by visiting the home page and scrolling down to the "Create a Dotty Project" section. Enjoy the ride🚀!

IMO the previous version of the header doesn't carry much meaning anymore, as the readers of the article are most probably familiar with what Dotty is. Instead, a good thing to do would be to specify some concrete steps for the users to try out Dotty.

TODO

  • Contributors

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. Enjoy the ride🚀!

<!--more-->
# New syntax for collective extension methods
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/cc @odersky


For the discussion, see [PR #7775](https://github.com/lampepfl/dotty/pull/7775). Also see the GitHub [repository](https://github.com/typelevel/kind-projector) of the kind projector Scala 2 plugin for more context.

# Further improvements to the contextual parameters syntax
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/cc @odersky

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

contextual -> context


For the time being, the change is experimental and the old syntax is also supported. For the discussion, see [PR #8017](https://github.com/lampepfl/dotty/pull/8017). You can browse the documentation concerning the new syntax [here](https://dotty.epfl.ch/docs/reference/contextual/motivation-new.html).

# Semantics of inline parameters changed
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At the end of this section, we should also mention the changes from #8061


This change was introduced by [PR #8060](https://github.com/lampepfl/dotty/pull/8060/). For more information about the inline capability of Dotty, see [documentation](https://dotty.epfl.ch/docs/reference/metaprogramming/inline.html).

# Primitive compiletime operations on singleton types
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

| Required: (13 : Int)
```

This feature is particularly useful for data science applications. In data science, it is very easy to make a linear algebra mistake, multiply matrices of wrong dimensions and get a runtime error – sometimes after a few hours of running the model. Hence compile-time verification of the models has a great potential for saving time. With such a type-level arithmetics, Scala becomes well-positioned to implement such type-safe data science frameworks.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/cc @biboudis

@nicolasstucki
Copy link
Contributor

We need to add the changes of #8021

@anatoliykmetyuk
Copy link
Contributor Author

@nicolasstucki, see 1d710ca, WDYT?

@anatoliykmetyuk anatoliykmetyuk force-pushed the 22-release-article branch 3 times, most recently from cf5bc87 to f00e09c Compare February 5, 2020 11:11
@anatoliykmetyuk
Copy link
Contributor Author

Also, I've added the following to the header of the article:

Alternatively, you can try this version of Scala online via Scastie. Once you're there, click "Build Settings" and set "Target" to "Dotty".

This should enable users to run examples even more easily. However, we should publish the article once Scastie is updated, a good practice anyway.

@anatoliykmetyuk anatoliykmetyuk merged commit 8725d58 into scala:master Feb 5, 2020
@anatoliykmetyuk anatoliykmetyuk deleted the 22-release-article branch February 5, 2020 16:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants