|
|
@@ -36,9 +36,9 @@ SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
|
|
|
|
## Problem
|
|
|
|
|
|
-We want to Carbon to have a high quality generics feature that achieves the
|
|
|
-goals set out in [#24](https://github.com/carbon-language/carbon-lang/pull/24).
|
|
|
-This is too big to land in a single proposal. This proposal continues
|
|
|
+We want Carbon to have a high quality generics feature that achieves the goals
|
|
|
+set out in [#24](https://github.com/carbon-language/carbon-lang/pull/24). This
|
|
|
+is too big to land in a single proposal. This proposal continues
|
|
|
[#553](https://github.com/carbon-language/carbon-lang/pull/553) defining the
|
|
|
details of:
|
|
|
|
|
|
@@ -438,10 +438,10 @@ variables and `==` for concrete type case.
|
|
|
|
|
|
Other languages, such as Swift and Rust, don't require `observe` declarations or
|
|
|
casting for the compiler to recognize two types as transitively equal. The
|
|
|
-problem is that there is know way to know how many equality constraints need to
|
|
|
-be considered before being able to conclude whether two type expressions are
|
|
|
-equal. In fact, the equality relations form a semi-group, where in general
|
|
|
-deciding whether two sequences are equivalent is undecidable, see
|
|
|
+problem is that there is no way to know how many equality constraints need to be
|
|
|
+considered before being able to conclude whether two type expressions are equal.
|
|
|
+In fact, the equality relations form a semi-group, where in general deciding
|
|
|
+whether two sequences are equivalent is undecidable, see
|
|
|
[Swift type checking is undecidable - Discussion - Swift Forums](https://forums.swift.org/t/swift-type-checking-is-undecidable/39024).
|
|
|
|
|
|
#### Restricted equality constraints
|