Follow the instructions to install the cs
launcher then run:
$ cs install scala3-repl
$ cs install scala3-compiler
diff --git a/docs/docs/reference/changed-features.md b/docs/docs/reference/changed-features.md index c23a9031bef0..7a8f717f2394 100644 --- a/docs/docs/reference/changed-features.md +++ b/docs/docs/reference/changed-features.md @@ -1,8 +1,8 @@ --- title: "Other Changed Features" type: chapter -num: 51 -previous-page: /scala3/reference/other-new-features/type-test +num: 52 +previous-page: /scala3/reference/other-new-features/experimental-defs next-page: /scala3/reference/changed-features/numeric-literals --- diff --git a/docs/docs/reference/changed-features/compiler-plugins.md b/docs/docs/reference/changed-features/compiler-plugins.md index c77796d71df1..b8e108c560c4 100644 --- a/docs/docs/reference/changed-features/compiler-plugins.md +++ b/docs/docs/reference/changed-features/compiler-plugins.md @@ -1,7 +1,7 @@ --- title: "Changes in Compiler Plugins" type: section -num: 67 +num: 68 previous-page: /scala3/reference/changed-features/eta-expansion next-page: /scala3/reference/changed-features/lazy-vals-init --- diff --git a/docs/docs/reference/changed-features/eta-expansion.md b/docs/docs/reference/changed-features/eta-expansion.md index 91516edca5a5..f21cb54406ad 100644 --- a/docs/docs/reference/changed-features/eta-expansion.md +++ b/docs/docs/reference/changed-features/eta-expansion.md @@ -1,7 +1,7 @@ --- title: "Automatic Eta Expansion" type: section -num: 66 +num: 67 previous-page: /scala3/reference/changed-features/pattern-matching next-page: /scala3/reference/changed-features/compiler-plugins --- diff --git a/docs/docs/reference/changed-features/implicit-conversions.md b/docs/docs/reference/changed-features/implicit-conversions.md index 39b4cde31e63..aab1baa32373 100644 --- a/docs/docs/reference/changed-features/implicit-conversions.md +++ b/docs/docs/reference/changed-features/implicit-conversions.md @@ -1,7 +1,7 @@ --- title: "Implicit Conversions" type: section -num: 60 +num: 61 previous-page: /scala3/reference/changed-features/implicit-resolution next-page: /scala3/reference/changed-features/overload-resolution --- diff --git a/docs/docs/reference/changed-features/implicit-resolution.md b/docs/docs/reference/changed-features/implicit-resolution.md index 22d6ba7d1fca..3c19dd0e9b23 100644 --- a/docs/docs/reference/changed-features/implicit-resolution.md +++ b/docs/docs/reference/changed-features/implicit-resolution.md @@ -1,7 +1,7 @@ --- title: "Changes in Implicit Resolution" type: section -num: 59 +num: 60 previous-page: /scala3/reference/changed-features/type-inference next-page: /scala3/reference/changed-features/implicit-conversions --- diff --git a/docs/docs/reference/changed-features/imports.md b/docs/docs/reference/changed-features/imports.md index 39568769a270..e46fbc8fc44b 100644 --- a/docs/docs/reference/changed-features/imports.md +++ b/docs/docs/reference/changed-features/imports.md @@ -1,7 +1,7 @@ --- title: "Imports" type: section -num: 56 +num: 57 previous-page: /scala3/reference/changed-features/wildcards next-page: /scala3/reference/changed-features/type-checking --- diff --git a/docs/docs/reference/changed-features/lazy-vals-init.md b/docs/docs/reference/changed-features/lazy-vals-init.md index a065cebb2a49..f70ec622f6e1 100644 --- a/docs/docs/reference/changed-features/lazy-vals-init.md +++ b/docs/docs/reference/changed-features/lazy-vals-init.md @@ -1,7 +1,7 @@ --- title: Lazy Vals Initialization type: section -num: 68 +num: 69 previous-page: /scala3/reference/changed-features/compiler-plugins next-page: /scala3/reference/changed-features/main-functions --- diff --git a/docs/docs/reference/changed-features/main-functions.md b/docs/docs/reference/changed-features/main-functions.md index 6f035278ed05..777532e7110b 100644 --- a/docs/docs/reference/changed-features/main-functions.md +++ b/docs/docs/reference/changed-features/main-functions.md @@ -1,7 +1,7 @@ --- title: "Main Methods" type: section -num: 69 +num: 70 previous-page: /scala3/reference/changed-features/lazy-vals-init next-page: /scala3/reference/dropped-features --- diff --git a/docs/docs/reference/changed-features/match-syntax.md b/docs/docs/reference/changed-features/match-syntax.md index 7ebc85b6d003..12e35cfa94df 100644 --- a/docs/docs/reference/changed-features/match-syntax.md +++ b/docs/docs/reference/changed-features/match-syntax.md @@ -1,7 +1,7 @@ --- title: "Match Expressions" type: section -num: 62 +num: 63 previous-page: /scala3/reference/changed-features/overload-resolution next-page: /scala3/reference/changed-features/vararg-splices --- diff --git a/docs/docs/reference/changed-features/numeric-literals.md b/docs/docs/reference/changed-features/numeric-literals.md index 8a21d97bd4a4..1cc07e3b1c8e 100644 --- a/docs/docs/reference/changed-features/numeric-literals.md +++ b/docs/docs/reference/changed-features/numeric-literals.md @@ -1,9 +1,9 @@ --- title: "Numeric Literals" type: section -num: 52 +num: 53 previous-page: /scala3/reference/changed-features next-page: /scala3/reference/changed-features/structural-types --- -[Document was moved](../experimental/numeric-literals.md) \ No newline at end of file +[Document was moved](../experimental/numeric-literals.md) diff --git a/docs/docs/reference/changed-features/operators.md b/docs/docs/reference/changed-features/operators.md index 5e05c6bfbcae..953aa18c8408 100644 --- a/docs/docs/reference/changed-features/operators.md +++ b/docs/docs/reference/changed-features/operators.md @@ -1,7 +1,7 @@ --- title: "Rules for Operators" type: section -num: 54 +num: 55 previous-page: /scala3/reference/changed-features/structural-types next-page: /scala3/reference/changed-features/wildcards --- diff --git a/docs/docs/reference/changed-features/overload-resolution.md b/docs/docs/reference/changed-features/overload-resolution.md index 6b203299707f..4205acdd412f 100644 --- a/docs/docs/reference/changed-features/overload-resolution.md +++ b/docs/docs/reference/changed-features/overload-resolution.md @@ -1,7 +1,7 @@ --- title: "Changes in Overload Resolution" type: section -num: 61 +num: 62 previous-page: /scala3/reference/changed-features/implicit-conversions next-page: /scala3/reference/changed-features/match-syntax --- diff --git a/docs/docs/reference/changed-features/pattern-bindings.md b/docs/docs/reference/changed-features/pattern-bindings.md index 307ff6387cce..a5eb39e98da6 100644 --- a/docs/docs/reference/changed-features/pattern-bindings.md +++ b/docs/docs/reference/changed-features/pattern-bindings.md @@ -1,7 +1,7 @@ --- title: "Pattern Bindings" type: section -num: 64 +num: 65 previous-page: /scala3/reference/changed-features/vararg-splices next-page: /scala3/reference/changed-features/pattern-matching --- diff --git a/docs/docs/reference/changed-features/pattern-matching.md b/docs/docs/reference/changed-features/pattern-matching.md index 2216d145a80d..93712f004307 100644 --- a/docs/docs/reference/changed-features/pattern-matching.md +++ b/docs/docs/reference/changed-features/pattern-matching.md @@ -1,7 +1,7 @@ --- title: "Option-less pattern matching" type: section -num: 65 +num: 66 previous-page: /scala3/reference/changed-features/pattern-bindings next-page: /scala3/reference/changed-features/eta-expansion --- diff --git a/docs/docs/reference/changed-features/structural-types.md b/docs/docs/reference/changed-features/structural-types.md index fe20a3aa5483..3ce3d6ac88bd 100644 --- a/docs/docs/reference/changed-features/structural-types.md +++ b/docs/docs/reference/changed-features/structural-types.md @@ -1,7 +1,7 @@ --- title: "Programmatic Structural Types" type: section -num: 53 +num: 54 previous-page: /scala3/reference/changed-features/numeric-literals next-page: /scala3/reference/changed-features/operators --- diff --git a/docs/docs/reference/changed-features/type-checking.md b/docs/docs/reference/changed-features/type-checking.md index 81ca345a6c7e..f647e57ac462 100644 --- a/docs/docs/reference/changed-features/type-checking.md +++ b/docs/docs/reference/changed-features/type-checking.md @@ -1,7 +1,7 @@ --- title: "Changes in Type Checking" type: section -num: 57 +num: 58 previous-page: /scala3/reference/changed-features/imports next-page: /scala3/reference/changed-features/type-inference --- diff --git a/docs/docs/reference/changed-features/type-inference.md b/docs/docs/reference/changed-features/type-inference.md index 873c91831210..2432cb8e4339 100644 --- a/docs/docs/reference/changed-features/type-inference.md +++ b/docs/docs/reference/changed-features/type-inference.md @@ -1,7 +1,7 @@ --- title: "Changes in Type Inference" type: section -num: 58 +num: 59 previous-page: /scala3/reference/changed-features/type-checking next-page: /scala3/reference/changed-features/implicit-resolution --- diff --git a/docs/docs/reference/changed-features/vararg-splices.md b/docs/docs/reference/changed-features/vararg-splices.md index efa7f034acea..2da55ee79945 100644 --- a/docs/docs/reference/changed-features/vararg-splices.md +++ b/docs/docs/reference/changed-features/vararg-splices.md @@ -1,7 +1,7 @@ --- title: "Vararg Splices" type: section -num: 63 +num: 64 previous-page: /scala3/reference/changed-features/match-syntax next-page: /scala3/reference/changed-features/pattern-bindings --- diff --git a/docs/docs/reference/changed-features/wildcards.md b/docs/docs/reference/changed-features/wildcards.md index fdf69fdcd954..0a84ebbf2a48 100644 --- a/docs/docs/reference/changed-features/wildcards.md +++ b/docs/docs/reference/changed-features/wildcards.md @@ -1,7 +1,7 @@ --- title: Wildcard Arguments in Types type: section -num: 55 +num: 56 previous-page: /scala3/reference/changed-features/operators next-page: /scala3/reference/changed-features/imports --- @@ -49,4 +49,4 @@ These rules make it possible to cross build between Scala 2 using the kind proje There is also a migration path for users that want a one-time transition to syntax with `_` as a type parameter placeholder. With option `-Ykind-projector:underscores` Scala 3 will regard `_` as a type parameter placeholder, leaving `?` as the only syntax for wildcards. -To cross-compile with old Scala 2 sources, while using `_` a placeholder, you must use options `-Xsource:3 -P:kind-projector:underscore-placeholders` together with a recent version of kind-projector (`0.13` and higher) and most recent versions of Scala 2 (`2.13.5` and higher and `2.12.14` and higher) +To cross-compile with old Scala 2 sources, while using `_` a placeholder, you must use options `-Xsource:3 -P:kind-projector:underscore-placeholders` together with a recent version of kind-projector (`0.13` and higher) and most recent versions of Scala 2 (`2.13.5` and higher and `2.12.14` and higher) diff --git a/docs/docs/reference/dropped-features.md b/docs/docs/reference/dropped-features.md index b2fb1fbe9fe2..6ccff5c40425 100644 --- a/docs/docs/reference/dropped-features.md +++ b/docs/docs/reference/dropped-features.md @@ -1,7 +1,7 @@ --- title: "Dropped Features" type: chapter -num: 70 +num: 71 previous-page: /scala3/reference/changed-features/main-functions next-page: /scala3/reference/dropped-features/delayed-init --- diff --git a/docs/docs/reference/dropped-features/auto-apply.md b/docs/docs/reference/dropped-features/auto-apply.md index 8670850f7903..6696bd8165d8 100644 --- a/docs/docs/reference/dropped-features/auto-apply.md +++ b/docs/docs/reference/dropped-features/auto-apply.md @@ -1,7 +1,7 @@ --- title: "Dropped: Auto-Application" type: section -num: 83 +num: 84 previous-page: /scala3/reference/dropped-features/symlits next-page: /scala3/reference/dropped-features/weak-conformance --- diff --git a/docs/docs/reference/dropped-features/class-shadowing.md b/docs/docs/reference/dropped-features/class-shadowing.md index b3a4ab2dc1ad..50101bf1d0b4 100644 --- a/docs/docs/reference/dropped-features/class-shadowing.md +++ b/docs/docs/reference/dropped-features/class-shadowing.md @@ -1,7 +1,7 @@ --- title: "Dropped: Class Shadowing" type: section -num: 79 +num: 80 previous-page: /scala3/reference/dropped-features/early-initializers next-page: /scala3/reference/dropped-features/limit22 --- diff --git a/docs/docs/reference/dropped-features/delayed-init.md b/docs/docs/reference/dropped-features/delayed-init.md index 5673db5dfb8e..f0b65a242c1a 100644 --- a/docs/docs/reference/dropped-features/delayed-init.md +++ b/docs/docs/reference/dropped-features/delayed-init.md @@ -1,7 +1,7 @@ --- title: "Dropped: DelayedInit" type: section -num: 71 +num: 72 previous-page: /scala3/reference/dropped-features next-page: /scala3/reference/dropped-features/macros --- diff --git a/docs/docs/reference/dropped-features/do-while.md b/docs/docs/reference/dropped-features/do-while.md index 3fd59430ac3b..7bc3b73e0091 100644 --- a/docs/docs/reference/dropped-features/do-while.md +++ b/docs/docs/reference/dropped-features/do-while.md @@ -1,7 +1,7 @@ --- title: "Dropped: Do-While" type: section -num: 75 +num: 76 previous-page: /scala3/reference/dropped-features/type-projection next-page: /scala3/reference/dropped-features/procedure-syntax --- diff --git a/docs/docs/reference/dropped-features/early-initializers.md b/docs/docs/reference/dropped-features/early-initializers.md index 18d97640b12f..234de159c30c 100644 --- a/docs/docs/reference/dropped-features/early-initializers.md +++ b/docs/docs/reference/dropped-features/early-initializers.md @@ -1,7 +1,7 @@ --- title: "Dropped: Early Initializers" type: section -num: 78 +num: 79 previous-page: /scala3/reference/dropped-features/package-objects next-page: /scala3/reference/dropped-features/class-shadowing --- diff --git a/docs/docs/reference/dropped-features/existential-types.md b/docs/docs/reference/dropped-features/existential-types.md index df624cbd0721..ea176659fd77 100644 --- a/docs/docs/reference/dropped-features/existential-types.md +++ b/docs/docs/reference/dropped-features/existential-types.md @@ -1,7 +1,7 @@ --- title: "Dropped: Existential Types" type: section -num: 73 +num: 74 previous-page: /scala3/reference/dropped-features/macros next-page: /scala3/reference/dropped-features/type-projection --- diff --git a/docs/docs/reference/dropped-features/limit22.md b/docs/docs/reference/dropped-features/limit22.md index 2e21efec58f6..1c2bb0e2882a 100644 --- a/docs/docs/reference/dropped-features/limit22.md +++ b/docs/docs/reference/dropped-features/limit22.md @@ -1,7 +1,7 @@ --- title: "Dropped: Limit 22" type: section -num: 80 +num: 81 previous-page: /scala3/reference/dropped-features/class-shadowing next-page: /scala3/reference/dropped-features/xml --- diff --git a/docs/docs/reference/dropped-features/macros.md b/docs/docs/reference/dropped-features/macros.md index f7a23edb0057..8208e8ee630c 100644 --- a/docs/docs/reference/dropped-features/macros.md +++ b/docs/docs/reference/dropped-features/macros.md @@ -1,7 +1,7 @@ --- title: "Dropped: Scala 2 Macros" type: section -num: 72 +num: 73 previous-page: /scala3/reference/dropped-features/delayed-init next-page: /scala3/reference/dropped-features/existential-types --- diff --git a/docs/docs/reference/dropped-features/package-objects.md b/docs/docs/reference/dropped-features/package-objects.md index 35e21d56a23c..c74edec9f566 100644 --- a/docs/docs/reference/dropped-features/package-objects.md +++ b/docs/docs/reference/dropped-features/package-objects.md @@ -1,7 +1,7 @@ --- title: "Dropped: Package Objects" type: section -num: 77 +num: 78 previous-page: /scala3/reference/dropped-features/procedure-syntax next-page: /scala3/reference/dropped-features/early-initializers --- diff --git a/docs/docs/reference/dropped-features/procedure-syntax.md b/docs/docs/reference/dropped-features/procedure-syntax.md index f3bf8cc9d47f..d7a33cf374f8 100644 --- a/docs/docs/reference/dropped-features/procedure-syntax.md +++ b/docs/docs/reference/dropped-features/procedure-syntax.md @@ -1,7 +1,7 @@ --- title: "Dropped: Procedure Syntax" type: section -num: 76 +num: 77 previous-page: /scala3/reference/dropped-features/do-while next-page: /scala3/reference/dropped-features/package-objects --- diff --git a/docs/docs/reference/dropped-features/symlits.md b/docs/docs/reference/dropped-features/symlits.md index 3cb7243af964..1c71608f40fa 100644 --- a/docs/docs/reference/dropped-features/symlits.md +++ b/docs/docs/reference/dropped-features/symlits.md @@ -1,7 +1,7 @@ --- title: "Dropped: Symbol Literals" type: section -num: 82 +num: 83 previous-page: /scala3/reference/dropped-features/xml next-page: /scala3/reference/dropped-features/auto-apply --- diff --git a/docs/docs/reference/dropped-features/this-qualifier.md b/docs/docs/reference/dropped-features/this-qualifier.md index c25f896415f5..69906351ca67 100644 --- a/docs/docs/reference/dropped-features/this-qualifier.md +++ b/docs/docs/reference/dropped-features/this-qualifier.md @@ -1,7 +1,7 @@ --- title: "Dropped: private[this] and protected[this]" type: section -num: 85 +num: 86 previous-page: /scala3/reference/dropped-features/weak-conformance next-page: /scala3/reference/dropped-features/wildcard-init --- diff --git a/docs/docs/reference/dropped-features/type-projection.md b/docs/docs/reference/dropped-features/type-projection.md index fb87ef79be23..f2d2f215ed21 100644 --- a/docs/docs/reference/dropped-features/type-projection.md +++ b/docs/docs/reference/dropped-features/type-projection.md @@ -1,7 +1,7 @@ --- title: "Dropped: General Type Projection" type: section -num: 74 +num: 75 previous-page: /scala3/reference/dropped-features/existential-types next-page: /scala3/reference/dropped-features/do-while --- diff --git a/docs/docs/reference/dropped-features/weak-conformance.md b/docs/docs/reference/dropped-features/weak-conformance.md index deca70b60714..1b6db185fad8 100644 --- a/docs/docs/reference/dropped-features/weak-conformance.md +++ b/docs/docs/reference/dropped-features/weak-conformance.md @@ -1,7 +1,7 @@ --- title: "Dropped: Weak Conformance" type: section -num: 84 +num: 85 previous-page: /scala3/reference/dropped-features/auto-apply next-page: /scala3/reference/dropped-features/this-qualifier --- diff --git a/docs/docs/reference/dropped-features/wildcard-init.md b/docs/docs/reference/dropped-features/wildcard-init.md index be633fb1ca21..078ec138b3bb 100644 --- a/docs/docs/reference/dropped-features/wildcard-init.md +++ b/docs/docs/reference/dropped-features/wildcard-init.md @@ -1,7 +1,7 @@ --- title: "Dropped: Wildcard Initializer" type: section -num: 86 +num: 87 previous-page: /scala3/reference/dropped-features/this-qualifier next-page: /scala3/reference/syntax --- diff --git a/docs/docs/reference/dropped-features/xml.md b/docs/docs/reference/dropped-features/xml.md index cab3d0663a55..c094408909f4 100644 --- a/docs/docs/reference/dropped-features/xml.md +++ b/docs/docs/reference/dropped-features/xml.md @@ -1,7 +1,7 @@ --- title: "Dropped: XML Literals" type: section -num: 81 +num: 82 previous-page: /scala3/reference/dropped-features/limit22 next-page: /scala3/reference/dropped-features/symlits --- diff --git a/docs/docs/reference/language-versions.md b/docs/docs/reference/language-versions.md index ec16e8bed3cc..a17a567d7362 100644 --- a/docs/docs/reference/language-versions.md +++ b/docs/docs/reference/language-versions.md @@ -2,7 +2,7 @@ title: "Language Versions" type: chapter description: This page lists the different flavours of language supported by the Scala 3 compiler. -num: 100 +num: 101 previous-page: overview --- diff --git a/docs/docs/reference/other-new-features/experimental-defs.md b/docs/docs/reference/other-new-features/experimental-defs.md index 11121f1d0fcd..5060ffb889d5 100644 --- a/docs/docs/reference/other-new-features/experimental-defs.md +++ b/docs/docs/reference/other-new-features/experimental-defs.md @@ -1,8 +1,12 @@ --- -layout: doc-page title: "Experimental definitions" +type: section +num: 51 +previous-page: /scala3/reference/other-new-features/type-test +next-page: /scala3/reference/changed-features --- + ## Experimental definitions The `@experimental` annotation allows the definition of an API that is not guaranteed backward binary or source compatibility. diff --git a/docs/docs/reference/other-new-features/type-test.md b/docs/docs/reference/other-new-features/type-test.md index 1fab03490e98..62b8d59eec6d 100644 --- a/docs/docs/reference/other-new-features/type-test.md +++ b/docs/docs/reference/other-new-features/type-test.md @@ -3,7 +3,7 @@ title: "TypeTest" type: section num: 50 previous-page: /scala3/reference/other-new-features/safe-initialization -next-page: /scala3/reference/changed-features +next-page: /scala3/reference/other-new-features/experimental-defs --- ## TypeTest diff --git a/docs/docs/reference/syntax.md b/docs/docs/reference/syntax.md index 365d861f4688..0652c05718db 100644 --- a/docs/docs/reference/syntax.md +++ b/docs/docs/reference/syntax.md @@ -1,7 +1,7 @@ --- title: "Scala 3 Syntax Summary" type: chapter -num: 87 +num: 88 previous-page: /scala3/reference/dropped-features/wildcard-init --- diff --git a/docs/docs/resources/talks.md b/docs/docs/resources/talks.md deleted file mode 100644 index 9991d847fb9a..000000000000 --- a/docs/docs/resources/talks.md +++ /dev/null @@ -1,69 +0,0 @@ ---- -layout: singlepage-overview -title: "Talks" ---- - -Let’s Talk About Scala 3 Series -------------------------------- - -[Let’s Talk About Scala 3](https://www.youtube.com/playlist?list=PLTx-VKTe8yLxYQfX_eGHCxaTuWvvG28Ml) is a series -of short (around 15 min) talks about Scala 3. It covers a variety of themes like how to get started, how to take -advantage of the new language features, or how to migrate from Scala 2. - -Talks on Scala 3 ----------------- -- (ScalaDays 2019, Lausanne) [A Tour of Scala 3](https://www.youtube.com/watch?v=_Rnrx2lo9cw) by [Martin Odersky](http://twitter.com/odersky) [\[slides\]](https://www.slideshare.net/Odersky/a-tour-of-scala-3) - -- (ScalaDays 2016, Berlin) [Scala's Road Ahead](https://www.youtube.com/watch?v=GHzWqJKFCk4) by [Martin Odersky](http://twitter.com/odersky) [\[slides\]](http://www.slideshare.net/Odersky/scala-days-nyc-2016) - -- (JVMLS 2015) [Compilers are Databases](https://www.youtube.com/watch?v=WxyyJyB_Ssc) by [Martin Odersky](http://twitter.com/odersky) [\[slides\]](http://www.slideshare.net/Odersky/compilers-are-databases) - -- (Scala World 2015) [Dotty: Exploring the future of Scala](https://www.youtube.com/watch?v=aftdOFuVU1o) by [Dmitry Petrashko](http://twitter.com/darkdimius) [\[slides\]](https://d-d.me/scalaworld2015/#/). - Dmitry covers many of the new features that Dotty brings on the table such as Intersection and Union types, improved lazy val initialization and more. - Dmitry also covers dotty internals and in particular the high-level of contextual abstractions of Dotty. You will get to - become familiar with many core concepts such as `Denotations`, their evolution through (compilation) time, their - transformations and more. - -Deep Dive with Scala 3 ----------------------- -- (ScalaDays 2019, Lausanne) [Metaprogramming in Dotty](https://www.youtube.com/watch?v=ZfDS_gJyPTc) by [Nicolas Stucki](https://github.com/nicolasstucki). - -- (ScalaDays 2019, Lausanne) [Future-proofing Scala: the TASTY intermediate representation](https://www.youtube.com/watch?v=zQFjC3zLYwo) by [Guillaume Martres](http://guillaume.martres.me/). - -- (Mar 21, 2017) [Dotty Internals 1: Trees & Symbols](https://www.youtube.com/watch?v=yYd-zuDd3S8) by [Dmitry Petrashko](http://twitter.com/darkdimius) [\[meeting notes\]](https://dotty.epfl.ch/docs/internals/dotty-internals-1-notes.html). - This is a recorded meeting between EPFL and Waterloo, where we introduce first notions inside Dotty: Trees and Symbols. - -- (Mar 21, 2017) [Dotty Internals 2: Types](https://www.youtube.com/watch?v=3gmLIYlGbKc) by [Martin Odersky](http://twitter.com/odersky) and [Dmitry Petrashko](http://twitter.com/darkdimius). - This is a recorded meeting between EPFL and Waterloo, where we introduce how types are represented inside Dotty. - -- (Jun 15, 2017) [Dotty Internals 3: Denotations](https://youtu.be/9iPA7zMRGKY) by [Martin Odersky](http://twitter.com/odersky) and [Dmitry Petrashko](http://twitter.com/darkdimius). - This is a recorded meeting between EPFL and Waterloo, where we introduce denotations in Dotty. - -- (JVM Language Summit) [How do we make the Dotty compiler fast](https://www.youtube.com/watch?v=9xYoSwnSPz0) by [Dmitry Petrashko](http://twitter.com/darkdimius). - [Dmitry Petrashko](http://twitter.com/darkdimius) gives a high-level introduction on what was done to make Dotty . - - -- (Typelevel Summit Oslo, May 2016) [Dotty and types: the story so far](https://www.youtube.com/watch?v=YIQjfCKDR5A) by - Guillaume Martres [\[slides\]](http://guillaume.martres.me/talks/typelevel-summit-oslo/). - Guillaume focused on some of the practical improvements to the type system that Dotty makes, like the new type parameter - inference algorithm that is able to reason about the type safety of more situations than scalac. - -- (flatMap(Oslo) 2016) [AutoSpecialization in Dotty](https://vimeo.com/165928176) by [Dmitry Petrashko](http://twitter.com/darkdimius) [\[slides\]](https://d-d.me/talks/flatmap2016/#/). - The Dotty Linker analyses your program and its dependencies to - apply a new specialization scheme. It builds on our experience from Specialization, Miniboxing and the Valhalla Project, - and drastically reduces the size of the emitted bytecode. And, best of all, it's always enabled, happens behind the - scenes without annotations, and results in speedups in excess of 20x. Additionally, it "just works" on Scala collections. - -- (ScalaSphere 2016) [Hacking on Dotty: A live demo](https://www.youtube.com/watch?v=0OOYGeZLHs4) by Guillaume Martres [\[slides\]](http://guillaume.martres.me/talks/dotty-live-demo/). - Guillaume hacks on Dotty: a live demo during which he - creates a simple compiler phase to trace method calls at run-time. - -- (Scala By the Bay 2016) [Dotty: what is it and how it works](https://www.youtube.com/watch?v=wCFbYu7xEJA) by Guillaume - Martres [\[slides\]](http://guillaume.martres.me/talks/dotty-tutorial/#/). Guillaume provides a high-level view of the - compilation-pipeline of Dotty. - -- (ScalaDays 2015, Amsterdam) [Making your Scala applications smaller and faster with the Dotty linker](https://www.youtube.com/watch?v=xCeI1ArdXM4) by Dmitry Petrashko [\[slides\]](https://d-d.me/scaladays2015/#/). - Dmitry introduces the call-graph analysis algorithm - that Dotty implements and the performance benefits we can get in terms of number of methods, bytecode size, JVM code size - and the number of objects allocated in the end. - diff --git a/docs/docs/usage/getting-started.md b/docs/docs/usage/getting-started.md deleted file mode 100644 index 1c43d6e5adbb..000000000000 --- a/docs/docs/usage/getting-started.md +++ /dev/null @@ -1,193 +0,0 @@ ---- -layout: singlepage-overview -title: Getting Started with Scala 3 -languages: ["ja"] ---- - - - -## Try Scala without installing anything - -To start experimenting with Scala 3 right away, use “Scastie” in your browser. -_Scastie_ is an online “playground” where you can experiment with Scala examples to see how things work, with access to all Scala compilers and published libraries. - - - -## Install Scala on your computer - -Installing Scala means installing various command-line tools and build tools. -We recommend using the Scala installer tool "Coursier" that automatically installs all the requirements, but you can still manually install each tool. - - -### Using the Scala Installer (recommended way) - -The Scala installer is a tool named [Coursier](https://get-coursier.io/docs/cli-overview), whose main command is named `cs`. -It ensures that a JVM and standard Scala tools are installed on your system. -Install it on your system with the following instructions. - -
Follow the instructions to install the cs
launcher then run:
$ cs install scala3-repl
$ cs install scala3-compiler