<commit_before>---
layout: blog-page
title: Announcing Dotty 0.1.2-RC1, a major step towards Scala 3
author: <NAME>
authorImg: /images/petrashko.jpg
---

Today, we excited to release Dotty version 0.1.2-RC1.  This release
serves as a technology preview that demonstrates new language features
and the compiler supporting them.


<!--more-->

## Why is this important?

_Dotty_ is the project name for a language and compiler that
is slated to become Scala 3.0. This is an ongoing development,
developed transparently as open source software. The Dotty project
started more than 4 years ago. It reached a major milestone in 2015 by
achieving
[bootstrap](http://dotty.epfl.ch/blog/2015/10/23/dotty-compiler-bootstraps.html),
that is, showing that the new compiler could compile itself.  Today we
have reached another milestone with this first release of the
codebase. Developments will not stop here, but they will in the future
all be part of regular time-based releases.

## How can you try it out?

You have several alternatives: use the `sbt-dotty` plugin, get a standalone
installation, or try it online on [Scastie].

### sbt
Using sbt 0.13.13 or newer, do:

```
sbt new lampepfl/dotty.g8
```

This will setup a new sbt project with Dotty as compiler. For more details on
using Dotty with sbt, see the
[example project](https://github.com/lampepfl/dotty-example-project).

### Standalone installation

Releases are available for download on the _Releases_
section of the Dotty repository: https://github.com/lampepfl/dotty/releases.

We also provide a [homebrew](https://brew.sh/) package that can be installed by running

```
brew install lampepfl/brew/dotty
```

### Scastie

[Scastie], the online Scala playground,
supports Dotty. 
You can try it out there without installing.

# What’s in the 0.1.2-RC1 technology preview?
This technology preview demonstrates new language features planned for Scala 3:

  - [Intersection Types](http://dotty.epfl.ch/docs/reference/intersection-types.html)
  - [Union Types](http://dotty.epfl.ch/docs/reference/union-types.html)
  - [Trait Parameters](http://dotty.epfl.ch/docs/reference/trait-parameters.html)
  - [Enumerations](http://dotty.epfl.ch/docs/reference/enums.html)
  - [Algebraic Data Types](http://dotty.epfl.ch/docs/reference/adts.html)
  - [By-Name Implicits](http://dotty.epfl.ch/docs/reference/implicit-by-name-parameters.html)

We also ship with tools that help you try out the Dotty platform:

  - [IDE features for Visual Studio Code](http://dotty.epfl.ch/docs/usage/ide-support.html)
  - [sbt support, including retro-compatibility with Scala 2](https://github.com/lampepfl/dotty-example-project)

See here for the full [release notes](http://dotty.epfl.ch/docs/release-notes/0.1.2.html).

## Release schedule
<commit_msg>Polish<commit_after>---
layout: blog-page
title: Announcing Dotty 0.1.2-RC1, a major step towards Scala 3
author: <NAME>
authorImg: /images/petrashko.jpg
---

Today, we excited to release Dotty version 0.1.2-RC1.  This release
serves as a technology preview that demonstrates new language features
and the compiler supporting them.


<!--more-->

## Why is this important?

_Dotty_ is the project name for a language and compiler that
is slated to become Scala 3.0. This is an ongoing development,
developed transparently as open source software. The Dotty project
started more than 4 years ago. It reached a major milestone in 2015 by
achieving
[bootstrap](http://dotty.epfl.ch/blog/2015/10/23/dotty-compiler-bootstraps.html),
that is, showing that the new compiler could compile itself.  Today we
have reached another milestone with this first release of the
codebase. Developments will not stop here, but they will in the future
all be part of regular time-based releases.

## How can you try it out?

You have several alternatives: use the `sbt-dotty` plugin, get a standalone
installation, or try it online on [Scastie].

### sbt
Using sbt 0.13.13 or newer, do:

```
sbt new lampepfl/dotty.g8
```

This will setup a new sbt project with Dotty as compiler. For more details on
using Dotty with sbt, see the
[example project](https://github.com/lampepfl/dotty-example-project).

### Standalone installation

Releases are available for download on the _Releases_
section of the Dotty repository: https://github.com/lampepfl/dotty/releases.

We also provide a [homebrew](https://brew.sh/) package that can be installed by running

```
brew install lampepfl/brew/dotty
```

### Scastie

[Scastie], the online Scala playground,
supports Dotty. 
You can try it out there without installing anything.

# What’s in the 0.1.2-RC1 technology preview?
This technology preview demonstrates new language features planned for Scala 3:

  - [Intersection Types](http://dotty.epfl.ch/docs/reference/intersection-types.html)
  - [Union Types](http://dotty.epfl.ch/docs/reference/union-types.html)
  - [Trait Parameters](http://dotty.epfl.ch/docs/reference/trait-parameters.html)
  - [Enumerations](http://dotty.epfl.ch/docs/reference/enums.html)
  - [Algebraic Data Types](http://dotty.epfl.ch/docs/reference/adts.html)
  - [By-Name Implicits](http://dotty.epfl.ch/docs/reference/implicit-by-name-parameters.html)

We also ship with tools that help you try out the Dotty platform:

  - [IDE features for Visual Studio Code](http://dotty.epfl.ch/docs/usage/ide-support.html)
  - [sbt support, including retro-compatibility with Scala 2](https://github.com/lampepfl/dotty-example-project)

See here for the full [release notes](http://dotty.epfl.ch/docs/release-notes/0.1.2.html).

## Release schedule

{'fraction_non_alphanumeric': 0.10624551328068917, 'fraction_numerical': 0.01399856424982053, 'mean_word_length': 4.237781954887218, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6270260', 'n_tokens_mistral': 1819, 'n_tokens_neox': 1720, 'n_words': 607}