You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[Type lambdas](new-types/type-lambdas.md), replacing encodings using structural types and type projection.
27
-
-[Implicit Function Types](contextual/implicit-function-types.md), offering abstraction over given parameters.
27
+
-[Context Functions](contextual/context-functions.md), offering abstraction over given parameters.
28
28
29
29
## Simplifications
30
30
31
31
These constructs replace existing constructs with the aim of making the language safer and simpler to use, and to promote uniformity in code style.
32
32
33
33
-[Trait Parameters](other-new-features/trait-parameters.md) replace [early initializers](dropped-features/early-initializers.md) with a more generally useful construct.
34
-
-[Given Instances](contextual/delegates.md)
34
+
-[Given Instances](contextual/givens.md)
35
35
replace implicit objects and defs, focussing on intent over mechanism.
36
36
-[Using Clauses](contextual/using-clauses.md) replace implicit parameters, avoiding their ambiguities.
37
37
-[Extension Methods](contextual/extension-methods.md) replace implicit classes with a clearer and simpler mechanism.
@@ -55,10 +55,10 @@ Value classes (superseded by opaque type aliases) are a special case. There are
55
55
These constructs are restricted to make the language safer.
56
56
57
57
-[Implicit Conversions](contextual/conversions.md): there is only one way to define implicit conversions instead of many, and potentially surprising implicit conversions require a language import.
58
-
-[Given Imports](contextual/import-delegate.md): implicits now require a special form of import, to make the import clearly visible.
58
+
-[Given Imports](contextual/given-imports.md): implicits now require a special form of import, to make the import clearly visible.
59
59
-[Type Projection](dropped-features/type-projection.md): only classes can be used as prefix `C` of a type projection `C#A`. Type projection on abstract types is no longer supported since it is unsound.
60
60
-[Multiversal Equality](contextual/multiversal-equality.md) implements an "opt-in" scheme to rule out nonsensical comparisons with `==` and `!=`.
61
-
-[@infix and @alpha](https://github.com/lampepfl/dotty/pull/5975)
61
+
-[@infix and @alpha](changed-features/operators.md)
62
62
make method application syntax uniform across code bases and require alphanumeric aliases for all symbolic names (proposed, not implemented).
63
63
64
64
Unrestricted implicit conversions continue to be available in Scala 3.0, but will be deprecated and removed later. Unrestricted versions of the other constructs in the list above are available only under `-source 3.0-migration`.
0 commit comments