Skip to content

Commit ae816fb

Browse files
authored
Merge pull request #4343 from dotty-staging/docs-overview-3
Fix internal links for overview page
2 parents df48ce1 + 5f1f316 commit ae816fb

File tree

2 files changed

+8
-10
lines changed

2 files changed

+8
-10
lines changed

docs/docs/reference/overview.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@ title: "Overview"
66
This section gives an overview of the most important language additions in Scala 3.
77
The new features address four major concerns:
88

9-
- [Consistency](consistency) - improve orthogonality and eliminate restrictions.
10-
- [Safety](safety) - enable precise domain modeling and safe refactoring.
11-
- [Ergonomics](ergonomics) - support readable and concise code.
12-
- [Performance](performance) - remove performance penalties for high-level code.
9+
- [Consistency](http://dotty.epfl.ch/docs/reference/overview.html#consistency) - improve orthogonality and eliminate restrictions.
10+
- [Safety](http://dotty.epfl.ch/docs/reference/overview.html#safety) - enable precise domain modeling and safe refactoring.
11+
- [Ergonomics](http://dotty.epfl.ch/docs/reference/overview.html#ergonomics) - support readable and concise code.
12+
- [Performance](http://dotty.epfl.ch/docs/reference/overview.html#performance) - remove performance penalties for high-level code.
1313

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.
@@ -23,7 +23,7 @@ The primary goal of the language constructs in this section is to make the langu
2323

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

26-
They replace compounds type `A with B` (the old syntax is kept for the moment but will
26+
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

@@ -44,7 +44,7 @@ The primary goal of the language constructs in this section is to make the langu
4444

4545
- Generic tuples
4646

47-
([Pending](https://github.com/lampepfl/dotty/pull/2199)) Generic tuples treat a tuple with arbitrary elements as a nested sequence of pairs. E.g. `(a, b, c)` is shorthand `(a, (b, (c, ())))`. This lets us drop the current limit of 22 for maximal tuple length and allows generic programs over tuples analogous to what is done for `HList`s.
47+
([Pending](https://github.com/lampepfl/dotty/pull/2199)) Tuples with arbitrary numbers of elements are treated as sequences of nested pairs. E.g. `(a, b, c)` is shorthand for `(a, (b, (c, ())))`. This lets us drop the current limit of 22 for maximal tuple length and it allows generic programs over tuples analogous to what is currently done for `HList`.
4848

4949
<a name="safety"></a>
5050
## Safety
@@ -67,12 +67,12 @@ Listed in this section are new language constructs that help precise, typechecke
6767
of some value or operation in a large code base, fix all type errors, and obtain
6868
at the end a working program. But universal equality `==` works for all types.
6969
So what should conceptually be a type error would not be reported and
70-
runtime behavior would change instead. Multiversal equality closes that loophole.
70+
runtime behavior might change instead. Multiversal equality closes that loophole.
7171

7272
- Null safety
7373

7474
(Planned) Adding a `null` value to every type has been called a "Billion Dollar Mistake"
75-
by its creator, Tony Hoare. With the introduction of union types, we can now do better.
75+
by its inventor, Tony Hoare. With the introduction of union types, we can now do better.
7676
A type like `String` will not carry the `null` value. To express that a value can
7777
be `null`, one will use the union type `String | Null` instead. For backwards compatibility and Java interoperability, selecting on a value that's possibly `null` will still be permitted but will have a declared effect that a `NullPointerException` can be thrown (see next section).
7878

docs/docs/reference/principled-meta-programming.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ layout: doc-page
33
title: "Principled Meta Programming"
44
---
55

6-
# Principled Meta Programming
7-
86
Principled meta programming is a new framework for staging and for some
97
forms of macros. It is expressed as strongly and statically typed
108
code using two fundamental operations: quotations and splicing. A

0 commit comments

Comments
 (0)