Skip to content

Commit 3d7d15f

Browse files
Merge pull request #5687 from duanebester/fix-#5674
Fix #5674: Went through individual files and updated reference links
2 parents fb0e3bc + 9da9a86 commit 3d7d15f

File tree

6 files changed

+21
-21
lines changed

6 files changed

+21
-21
lines changed

docs/docs/reference/new-types/dependent-function-types-spec.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ dependent function types for methods with dependent result types.
3535

3636
Dependent functions can be implicit, and generalize to arity `N > 22` in the
3737
same way that other functions do, see [the corresponding
38-
documentation](https://dotty.epfl.ch/docs/reference/dropped/limit22.html).
38+
documentation](https://dotty.epfl.ch/docs/reference/dropped-features/limit22.html).
3939

4040
## Examples
4141

docs/docs/reference/new-types/implicit-function-types-spec.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ insertion of `scala.Function0` around expression in by-name argument position.
7272

7373
Implicit functions generalize to `N > 22` in the same way that functions do,
7474
see [the corresponding
75-
documentation](https://dotty.epfl.ch/docs/reference/dropped/limit22.html).
75+
documentation](https://dotty.epfl.ch/docs/reference/dropped-features/limit22.html).
7676

7777
## Examples
7878

docs/docs/reference/new-types/union-types-spec.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ title: "Union Types - More Details"
66
## Syntax
77

88
Syntactically, unions follow the same rules as intersections, but have a lower precedence, see
9-
[Intersection Types - More Details](http://lampepfl.github.io/dotty/docs/reference/intersection-types-spec.html).
9+
[Intersection Types - More Details](http://lampepfl.github.io/dotty/docs/reference/new-types/intersection-types-spec.html).
1010

1111
### Interaction with pattern matching syntax
1212
`|` is also used in pattern matching to separate pattern alternatives and has

docs/docs/reference/overview.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,33 +14,33 @@ The new features address four major concerns:
1414
Scala 3 also drops a number of features that were used rarely, or where experience showed
1515
that they tended to cause problems. These are listed separately in the [Dropped Features](http://dotty.epfl.ch/docs) section.
1616

17-
Another important set of changes is about meta programming and generative programming. So far these have relied on a [macro system](https://docs.scala-lang.org/overviews/macros/overview.html) that had experimental status. This macro system will be replaced with a different solution that extends [principled meta programming](http://dotty.epfl.ch/docs/reference/principled-meta-programming.html) and [inline](http://dotty.epfl.ch/docs/reference/inline.html) definitions with some reflective capabilities. The current state of the full design and its ramifications for generative programming will be described elsewhere.
17+
Another important set of changes is about meta programming and generative programming. So far these have relied on a [macro system](https://docs.scala-lang.org/overviews/macros/overview.html) that had experimental status. This macro system will be replaced with a different solution that extends [principled meta programming](http://dotty.epfl.ch/docs/reference/other-new-features/principled-meta-programming.html) and [inline](http://dotty.epfl.ch/docs/reference/other-new-features/inline.html) definitions with some reflective capabilities. The current state of the full design and its ramifications for generative programming will be described elsewhere.
1818

1919
<a name="consistency"></a>
2020
## Consistency
2121

2222
The primary goal of the language constructs in this section is to make the language more consistent, both internally, and in relationship to its [foundations](http://www.scala-lang.org/blog/2016/02/03/essence-of-scala.html).
2323

24-
- [Intersection types](http://dotty.epfl.ch/docs/reference/intersection-types.html) `A & B`
24+
- [Intersection types](http://dotty.epfl.ch/docs/reference/new-types/intersection-types.html) `A & B`
2525

2626
They replace compound types `A with B` (the old syntax is kept for the moment but will
2727
be deprecated in the future). Intersection types are one of the core features of DOT. They
2828
are commutative: `A & B` and `B & A` represent the same type.
2929

30-
- [Implicit function types](http://dotty.epfl.ch/docs/reference/implicit-function-types.html) `implicit A => B`.
30+
- [Implicit function types](http://dotty.epfl.ch/docs/reference/new-types/implicit-function-types.html) `implicit A => B`.
3131

3232
Methods and lambdas can have implicit parameters, so it's natural to extend the
3333
same property to function types. Implicit function types help ergonomics and performance
3434
as well. They can replace many uses of monads, offering better composability and an order of magnitude improvement in runtime speed.
3535

36-
- [Dependent function types](http://dotty.epfl.ch/docs/reference/dependent-function-types.html) `(x: T) => x.S`.
36+
- [Dependent function types](http://dotty.epfl.ch/docs/reference/new-types/dependent-function-types.html) `(x: T) => x.S`.
3737

3838
The result type of a method can refer to its parameters. We now extend the same capability
3939
to the result type of a function.
4040

41-
- [Trait parameters](http://dotty.epfl.ch/docs/reference/trait-parameters.html) `trait T(x: S)`
41+
- [Trait parameters](http://dotty.epfl.ch/docs/reference/other-new-features/trait-parameters.html) `trait T(x: S)`
4242

43-
Traits can now have value parameters, just like classes do. This replaces the more complex [early initializer](http://dotty.epfl.ch/docs/reference/dropped/early-initializers.html) syntax.
43+
Traits can now have value parameters, just like classes do. This replaces the more complex [early initializer](http://dotty.epfl.ch/docs/reference/dropped-features/early-initializers.html) syntax.
4444

4545
- Generic tuples
4646

@@ -51,15 +51,15 @@ The primary goal of the language constructs in this section is to make the langu
5151

5252
Listed in this section are new language constructs that help precise, typechecked domain modeling and that improve the reliability of refactorings.
5353

54-
- [Union types](http://dotty.epfl.ch/docs/reference/union-types.html) `A | B`
54+
- [Union types](http://dotty.epfl.ch/docs/reference/new-types/union-types.html) `A | B`
5555

5656
Union types gives fine-grained control over the possible values of a type.
5757
A union type `A | B` states that a value can be an `A` or a `B` without having
5858
to widen to a common supertype of `A` and `B`. Union types thus enable more
5959
precise domain modeling. They are also very useful for interoperating with
6060
Javascript libraries and JSON protocols.
6161

62-
- [Multiversal Equality](http://dotty.epfl.ch/docs/reference/multiversal-equality.html)
62+
- [Multiversal Equality](http://dotty.epfl.ch/docs/reference/other-new-features/multiversal-equality.html)
6363

6464
Multiversal equality is an opt-in way to check that comparisons using `==` and
6565
`!=` only apply to compatible types. It thus removes the biggest remaining hurdle
@@ -108,11 +108,11 @@ The primary goal of the language constructs in this section is to make common pr
108108
Scala enums will interoperate with the host platform. They support multiversal equality
109109
out of the box, i.e. an enum can only be compared to values of the same enum type.
110110

111-
- [Type lambdas](http://dotty.epfl.ch/docs/reference/type-lambdas.html) `[X] => C[X]`
111+
- [Type lambdas](http://dotty.epfl.ch/docs/reference/new-types/type-lambdas.html) `[X] => C[X]`
112112

113113
Type lambdas were encoded previously in a roundabout way, exploiting
114114
loopholes in Scala's type system which made it Turing complete. With
115-
the removal of [unrestricted type projection](dropped/type-projection.html), the loopholes are eliminated, so the
115+
the removal of [unrestricted type projection](dropped-features/type-projection.html), the loopholes are eliminated, so the
116116
previous encodings are no longer expressible. Type lambdas in the language provide
117117
a safe and more ergonomic alternative.
118118

@@ -134,7 +134,7 @@ The primary goal of the language constructs in this section is to enable high-le
134134

135135
([Pending](https://github.com/lampepfl/dotty/pull/4028)) An opaque alias defines a new type `A` in terms of an existing type `T`. Unlike the previous modeling using value classes, opaque types never box. Opaque types are described in detail in [SIP 35](https://docs.scala-lang.org/sips/opaque-types.html).
136136

137-
- [Erased parameters](http://dotty.epfl.ch/docs/reference/erased-terms.html)
137+
- [Erased parameters](http://dotty.epfl.ch/docs/reference/other-new-features/erased-terms.html)
138138

139139
Parameters of methods and functions can be declared `erased`. This means that
140140
the corresponding arguments are only used for type checking purposes and no code

docs/docs/release-notes/0.1.2.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -76,19 +76,19 @@ This release ships with the following features:
7676

7777
[1]: https://docs.google.com/document/d/1h3KUMxsSSjyze05VecJGQ5H2yh7fNADtIf3chD3_wr0/edit
7878
[2]: https://infoscience.epfl.ch/record/222780?ln=en
79-
[3]: http://dotty.epfl.ch/docs/reference/intersection-types.html
80-
[4]: http://dotty.epfl.ch/docs/reference/union-types.html
79+
[3]: http://dotty.epfl.ch/docs/reference/new-types/intersection-types.html
80+
[4]: http://dotty.epfl.ch/docs/reference/new-types/union-types.html
8181
[5]: http://dotty.epfl.ch/docs/reference/enums/adts.html
8282
[6]: http://dotty.epfl.ch/docs/reference/enums/desugarEnums.html
83-
[7]: http://dotty.epfl.ch/docs/reference/implicit-by-name-parameters.html
83+
[7]: http://dotty.epfl.ch/docs/reference/other-new-features/implicit-by-name-parameters.html
8484
[8]: https://infoscience.epfl.ch/record/228518
8585
[9]: http://docs.scala-lang.org/sips/pending/static-members.html
8686
[10]: http://docs.scala-lang.org/sips/pending/improved-lazy-val-initialization.html
8787
[11]: http://magarciaepfl.github.io/scala/
8888
[12]: https://github.com/lampepfl/dotty/commit/b2215ed23311b2c99ea638f9d7fcad9737dba588
8989
[13]: https://github.com/lampepfl/dotty/pull/187
9090
[14]: https://github.com/lampepfl/dotty/pull/217
91-
[15]: http://dotty.epfl.ch/docs/reference/trait-parameters.html
91+
[15]: http://dotty.epfl.ch/docs/reference/other-new-features/trait-parameters.html
9292
[16]: https://github.com/lampepfl/dotty/commit/89540268e6c49fb92b9ca61249e46bb59981bf5a
9393
[17]: https://github.com/lampepfl/dotty/pull/174
9494
[18]: https://github.com/lampepfl/dotty/pull/488
@@ -103,10 +103,10 @@ This release ships with the following features:
103103
[27]: https://github.com/lampepfl/dotty/pull/2513
104104
[28]: https://github.com/lampepfl/dotty/pull/2361
105105
[29]: https://github.com/lampepfl/dotty/pull/1453
106-
[30]: http://dotty.epfl.ch/docs/reference/implicit-function-types.html
106+
[30]: http://dotty.epfl.ch/docs/reference/new-types/implicit-function-types.html
107107
[31]: https://github.com/lampepfl/dotty/pull/2136
108108
[32]: https://github.com/lampepfl/dotty/pull/1758
109-
[33]: http://dotty.epfl.ch/docs/reference/inline.html
109+
[33]: http://dotty.epfl.ch/docs/reference/other-new-features/inline.html
110110

111111
# Contributors
112112
The Dotty team and contributors have closed 750 issues and have merged a total of 1258 pull requests.

docs/docs/typelevel.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -557,7 +557,7 @@ Rewrite methods are a safer alternative to the whitebox macros in Scala 2. Both
557557

558558
By contrast, Scala 2 macros mean that user-defined code is invoked to process program fragments as data. The result of this computation is then embedded instead of the macro call. Macros are thus a lot more powerful than rewrite methods, but also a lot less safe.
559559

560-
Functionality analogous to blackbox macros in Scala-2 is available in Scala-3 through its [principled meta programming](https://dotty.epfl.ch/docs/reference/principled-meta-programming.html) system: Code can be turned into data using quotes `(')`. Code-returning computations can be inserted into quotes using splices `(~)`. A splice outside quotes means that the spliced computation is _run_, which is the analogue of
560+
Functionality analogous to blackbox macros in Scala-2 is available in Scala-3 through its [principled meta programming](https://dotty.epfl.ch/docs/reference/other-new-features/principled-meta-programming.html) system: Code can be turned into data using quotes `(')`. Code-returning computations can be inserted into quotes using splices `(~)`. A splice outside quotes means that the spliced computation is _run_, which is the analogue of
561561
invoking a macro. Quoted code can be inspected using reflection on Tasty trees.
562562

563563
To compare: here's the scheme used in Scala-2 to define a macro:

0 commit comments

Comments
 (0)