diff --git a/_sips/sips/2014-06-27-42.type.md b/_sips/sips/2014-06-27-42.type.md index 1da91fba5a..aef0b4320b 100644 --- a/_sips/sips/2014-06-27-42.type.md +++ b/_sips/sips/2014-06-27-42.type.md @@ -58,7 +58,7 @@ many important Scala libraries. The lack of first class syntax for literal types authors to use the experimental Scala macro system to provide a means to express them. Whilst this has proved to be extremely successful, it has poor ergonomics (although this can typically be hidden from library _users_) and is not portable -- because Scala macros in general and the mechanisms used -to expose literal types to Scala programmes in particular depend on internal implementation details +to expose literal types to Scala programs in particular depend on internal implementation details of the current Scala compiler. The poor ergonomics of macro-based exposure of literal types was the original motivation for this @@ -207,7 +207,7 @@ val book: Book = shapeless enables generic programming and type class derivation by providing a mechanism for mapping a value of a standard Scala algebraic data type onto a sum of products representation type, -essentially nested labelled `Either`'s of the records discussed above. Techniques of this sort are +essentially nested labelled `Either`s of the records discussed above. Techniques of this sort are widely used, and removing the incidental complexity that comes with encoding via macros will improve the experience for many users across a wide variety of domains. @@ -448,7 +448,7 @@ applications which work with large datasets. ``` final val narrow = 23 // inferred type of narrow: 23 - class Widen + class Wide object Narrow extends Wide def id[T](t: T): T = t id(Narrow) // result is Narrow: Narrow.type