Skip to content

Commit 129cd1e

Browse files
authored
0.3.0-RC2 Blog Post (#3056)
1 parent 3db8041 commit 129cd1e

File tree

1 file changed

+149
-0
lines changed

1 file changed

+149
-0
lines changed
Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
---
2+
layout: blog-page
3+
title: Announcing Dotty 0.3.0-RC2
4+
author: Allan Renucci
5+
authorImg: /images/allan.jpg
6+
date: 2017-09-07
7+
---
8+
9+
Today, we are excited to release Dotty version 0.3.0-RC2. This release
10+
serves as a technology preview that demonstrates new language features
11+
and the compiler supporting them.
12+
13+
If you’re not familiar with Dotty, it's a platform to try out new language concepts and compiler
14+
technologies for Scala. The focus is mainly on simplification. We remove extraneous syntax
15+
(e.g. no XML literals), and try to boil down Scala’s types into a smaller set of more fundamental
16+
constructors. The theory behind these constructors is researched in
17+
[DOT](https://infoscience.epfl.ch/record/215280), a calculus for dependent object types.
18+
You can learn more about Dotty on our [website](http://dotty.epfl.ch).
19+
20+
<!--more-->
21+
22+
This is our third scheduled release according to our [6-week release schedule](http://dotty.epfl.ch/docs/usage/version-numbers.html).
23+
The [previous technology preview](/blog/2017/07/12/second-dotty-milestone-release.html) improved
24+
stability and reliability:
25+
- substantial improvement of quality of generated code for pattern matching
26+
- improvements in VS Code IDE stability
27+
- support Windows in VS Code IDE
28+
- improved compatibility with scalac
29+
- initial support for reproducible builds
30+
31+
## What’s in the 0.3.0-RC2 technology preview?
32+
This technology preview further improves stability and reliability. Some highlighted PRs are:
33+
- IDE bug fixes:
34+
[#2986](https://github.com/lampepfl/dotty/pull/2986),
35+
[#2932](https://github.com/lampepfl/dotty/pull/2932),
36+
[#2885](https://github.com/lampepfl/dotty/pull/2885),
37+
[#2876](https://github.com/lampepfl/dotty/pull/2876),
38+
[#2870](https://github.com/lampepfl/dotty/pull/2870),
39+
[#2872](https://github.com/lampepfl/dotty/pull/2872) by [@odersky] and [@smarter].
40+
41+
42+
## How can you try it out?
43+
We ship with tools that help you try out the Dotty platform:
44+
45+
- [IDE features for Visual Studio Code](http://dotty.epfl.ch/docs/usage/ide-support.html)
46+
- [sbt support, including retro-compatibility with Scala 2](https://github.com/lampepfl/dotty-example-project)
47+
48+
49+
You have several alternatives; use the `sbt-dotty` plugin, get a standalone
50+
installation, or try it online on [Scastie].
51+
52+
### sbt
53+
Using sbt 0.13.13 or newer, do:
54+
55+
```
56+
sbt new lampepfl/dotty.g8
57+
```
58+
59+
This will setup a new sbt project with Dotty as compiler. For more details on
60+
using Dotty with sbt, see the
61+
[example project](https://github.com/lampepfl/dotty-example-project).
62+
63+
### Standalone installation
64+
Releases are available for download on the _Releases_
65+
section of the Dotty repository:
66+
[https://github.com/lampepfl/dotty/releases](https://github.com/lampepfl/dotty/releases)
67+
68+
We also provide a [homebrew](https://brew.sh/) package that can be installed by running:
69+
70+
```
71+
brew install lampepfl/brew/dotty
72+
```
73+
74+
In case you have already installed Dotty via brew, you should instead update it:
75+
76+
```
77+
brew upgrade dotty
78+
```
79+
80+
### Scastie
81+
[Scastie], the online Scala playground, supports Dotty.
82+
You can try it out there without installing anything.
83+
84+
85+
## What are the next steps?
86+
Over the coming weeks and months, we plan to work on the following topics:
87+
88+
- [Add support for using Dotty generated classes with Scala 2.12](https://github.com/lampepfl/dotty/pull/2827)
89+
- [Add Language-level support for HMaps and HLists](https://github.com/lampepfl/dotty/pull/2199);
90+
- Upstream more optimizations from Dotty Linker
91+
- [Add support for existing in the same classpath with Scala 2.12](https://github.com/lampepfl/dotty/pull/2827)
92+
- [Add native Dotty REPL](https://github.com/lampepfl/dotty/pull/2991)
93+
94+
## Questions / Reporting Bugs
95+
If you have questions or any sort of feedback, feel free to send us a message on our
96+
[Gitter channel](https://gitter.im/lampepfl/dotty). If you encounter a bug, please
97+
[open an issue on GitHub](https://github.com/lampepfl/dotty/issues/new).
98+
99+
## Contributing
100+
Thank you to all the contributors who made this release possible!
101+
102+
According to `git shortlog -sn --no-merges 0.2.0-RC1..0.3.0-RC2` these are:
103+
104+
```
105+
138 Martin Odersky
106+
36 Nicolas Stucki
107+
12 Guillaume Martres
108+
7 Dmitry Petrashko
109+
5 liu fengyun
110+
4 Allan Renucci
111+
4 Felix Mulder
112+
2 Lorand Szakacs
113+
1 Lukas Ciszewski
114+
1 Max Ovsiankin
115+
1 Lanny Ripple
116+
1 Serhii Pererva
117+
1 Georg Schmid
118+
```
119+
120+
If you want to get your hands dirty with any of this, now is a good moment to get involved!
121+
You can have a look at our [Getting Started page](http://dotty.epfl.ch/docs/contributing/getting-started.html),
122+
our [Awesome Error Messages](http://scala-lang.org/blog/2016/10/14/dotty-errors.html) or some of
123+
the simple [Dotty issues](https://github.com/lampepfl/dotty/issues?q=is%3Aissue+is%3Aopen+label%3Aexp%3Anovice).
124+
They make perfect entry-points into hacking on the compiler.
125+
126+
We are looking forward to having you join the team of contributors.
127+
128+
## Library authors: Join our community build
129+
Dotty now has a set of libraries that are built against every nightly snapshot.
130+
Currently this includes scalatest, squants and algebra.
131+
Join our [community build](https://github.com/lampepfl/dotty-community-build)
132+
to make sure that our regression suite includes your library.
133+
134+
To get started, see [https://github.com/lampepfl/dotty](https://github.com/lampepfl/dotty).
135+
136+
137+
[Scastie]: https://scastie.scala-lang.org/?target=dotty
138+
139+
[@odersky]: https://github.com/odersky
140+
[@DarkDimius]: https://github.com/DarkDimius
141+
[@smarter]: https://github.com/smarter
142+
[@felixmulder]: https://github.com/felixmulder
143+
[@nicolasstucki]: https://github.com/nicolasstucki
144+
[@liufengyun]: https://github.com/liufengyun
145+
[@OlivierBlanvillain]: https://github.com/OlivierBlanvillain
146+
[@OlivierBlanvillain]: https://github.com/OlivierBlanvillain
147+
[@biboudis]: https://github.com/biboudis
148+
[@biboudis]: https://github.com/biboudis
149+
[@allanrenucci]: https://github.com/allanrenucci

0 commit comments

Comments
 (0)