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
(_aka_ implicit function types) offering abstraction over inferable parameters.
24
+
(_aka_ implicit function types) offering abstraction over implicit parameters.
25
25
26
26
**Status: essential**
27
27
@@ -38,7 +38,7 @@ These constructs replace existing constructs with the aim of making the language
38
38
-[Trait Parameters](https://dotty.epfl.ch/docs/reference/other-new-features/trait-parameters.html) replace [early initializers](https://dotty.epfl.ch/docs/reference/dropped-features/early-initializers.html) with a more generally useful construct.
replace implicit objects and defs, focussing on intent over mechanism.
41
-
-[Inferable parameters](https://dotty.epfl.ch/docs/reference/contextual/inferable-params.html) replace implicit parameters, avoiding their ambiguities.
41
+
-[Given Clauses](https://dotty.epfl.ch/docs/reference/contextual/inferable-params.html) replace implicit parameters, avoiding their ambiguities.
42
42
-[Extension Methods](https://dotty.epfl.ch/docs/reference/contextual/extension-methods.html) replace implicit classes with a clearer and simpler mechanism.
43
43
-[Opaque Type Aliases](https://dotty.epfl.ch/docs/reference/other-new-features/opaques.html) replace most uses
44
44
of value classes while guaranteeing absence of boxing.
@@ -71,7 +71,7 @@ For the next several versions, old features will remain available and deprecatio
71
71
These constructs are restricted to make the language safer.
72
72
73
73
-[Implicit Conversions](https://dotty.epfl.ch/docs/reference/contextual/conversions.html): there is only one way to define implicit conversions instead of many, and potentially surprising implicit conversions require a language import.
74
-
-[Implied Imports](https://dotty.epfl.ch/docs/reference/contextual/import-implied.html): implicits now require a special form of import, to make the import clearly visible.
74
+
-[Import Implied](https://dotty.epfl.ch/docs/reference/contextual/import-implied.html): implicits now require a special form of import, to make the import clearly visible.
75
75
-[Type Projection](https://dotty.epfl.ch/docs/reference/dropped-features/type-projection.html): 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.
76
76
-[Multiversal Equality](https://dotty.epfl.ch/docs/reference/contextual/multiversal-equality.html) implements an "opt-in" scheme to rule out nonsensical comparisons with `==` and `!=`.
77
77
-[@infix and @alpha](https://github.com/lampepfl/dotty/pull/5975)
(_aka_ implicit function types) offering abstraction over inferable parameters.
29
+
(_aka_ implicit function types) offering abstraction over implicit parameters.
30
30
31
31
## Simplifications
32
32
@@ -35,7 +35,7 @@ These constructs replace existing constructs with the aim of making the language
35
35
-[Trait Parameters](https://dotty.epfl.ch/docs/reference/other-new-features/trait-parameters.html) replace [early initializers](https://dotty.epfl.ch/docs/reference/dropped-features/early-initializers.html) with a more generally useful construct.
replace implicit objects and defs, focussing on intent over mechanism.
38
-
-[Inferable parameters](https://dotty.epfl.ch/docs/reference/contextual/inferable-params.html) replace implicit parameters, avoiding their ambiguities.
38
+
-[Given Clauses](https://dotty.epfl.ch/docs/reference/contextual/inferable-params.html) replace implicit parameters, avoiding their ambiguities.
39
39
-[Extension Methods](https://dotty.epfl.ch/docs/reference/contextual/extension-methods.html) replace implicit classes with a clearer and simpler mechanism.
40
40
-[Opaque Type Aliases](https://dotty.epfl.ch/docs/reference/other-new-features/opaques.html) replace most uses
41
41
of value classes while guaranteeing absence of boxing.
@@ -57,7 +57,7 @@ Value classes (superseded by opaque type aliases) are a special case. There are
57
57
These constructs are restricted to make the language safer.
58
58
59
59
-[Implicit Conversions](https://dotty.epfl.ch/docs/reference/contextual/conversions.html): there is only one way to define implicit conversions instead of many, and potentially surprising implicit conversions require a language import.
60
-
-[Implied Imports](https://dotty.epfl.ch/docs/reference/contextual/import-implied.html): implicits now require a special form of import, to make the import clearly visible.
60
+
-[Import Implied](https://dotty.epfl.ch/docs/reference/contextual/import-implied.html): implicits now require a special form of import, to make the import clearly visible.
61
61
-[Type Projection](https://dotty.epfl.ch/docs/reference/dropped-features/type-projection.html): 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.
62
62
-[Multiversal Equality](https://dotty.epfl.ch/docs/reference/contextual/multiversal-equality.html) implements an "opt-in" scheme to rule out nonsensical comparisons with `==` and `!=`.
63
63
-[@infix and @alpha](https://github.com/lampepfl/dotty/pull/5975)
0 commit comments