From 964a24d4dcc1ac091f5788842d4a3290e68fe957 Mon Sep 17 00:00:00 2001 From: Dave Gurnell Date: Mon, 31 Oct 2016 18:05:06 +0000 Subject: [PATCH 1/3] Tweaks to poly and nat --- dist/shapeless-guide.pdf | Bin 412167 -> 414930 bytes src/meta/metadata.yaml | 2 +- src/pages/nat/index.md | 15 +- src/pages/nat/length.md | 13 +- src/pages/nat/random.md | 24 ++-- src/pages/nat/summary.md | 24 ++-- src/pages/notes/todos.md | 8 +- src/pages/poly/index.md | 51 +++---- src/pages/poly/map-flatmap-fold.md | 29 ++-- src/pages/poly/poly.md | 130 ++++++++++-------- .../poly/{type-class.md => product-mapper.md} | 30 ++-- src/pages/poly/summary.md | 6 +- 12 files changed, 188 insertions(+), 144 deletions(-) rename src/pages/poly/{type-class.md => product-mapper.md} (72%) diff --git a/dist/shapeless-guide.pdf b/dist/shapeless-guide.pdf index 19a62b4b58028b453feb7eb07ff8071c4dbb740e..0a8260456cb04403ac7704f0e1fe53a784e97d91 100644 GIT binary patch delta 91214 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

+{2$`6j|zv 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 F`47g6_d!ZaFEE%ir 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Ði;h^2QeG{VPFR%#MU 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 diff --git a/src/meta/metadata.yaml b/src/meta/metadata.yaml index 2ba4515..4c426d7 100644 --- a/src/meta/metadata.yaml +++ b/src/meta/metadata.yaml @@ -63,7 +63,7 @@ pages: - poly/index.md - poly/poly.md - poly/map-flatmap-fold.md - - poly/type-class.md + - poly/product-mapper.md - poly/summary.md - nat/index.md diff --git a/src/pages/nat/index.md b/src/pages/nat/index.md index d385c89..bd259ad 100644 --- a/src/pages/nat/index.md +++ b/src/pages/nat/index.md @@ -3,8 +3,11 @@ From time to time we need to count things at the type level. For example, we may need to know the length of an `HList` or the number of terms we have expanded so far in a computation. +We can represent numbers as values easily enough, +but if we want to influence implicit resolution +we need to represent them as the type level. This chapter covers the theory behind counting with types, -and provides some use cases related to type class derivation. +and provides some compelling use cases for type class derivation. ## Representing numbers as types @@ -12,7 +15,7 @@ Shapeless uses "church encoding" to represent natural numbers at the type level. It provides a type `Nat` with two subtypes: `_0` representing zero, -and `Succ[N]` representing the successor of `N`: +and `Succ[N]` representing `N+1`: ```tut:book:silent import shapeless.{Nat, Succ} @@ -23,8 +26,7 @@ type Two = Succ[One] // etc... ``` -shapeless provides aliases for the first 22 `Nats` -as `Nat._N`: +Shapeless provides aliases for the first 22 `Nats` as `Nat._N`: ```tut:book:silent Nat._1 @@ -48,8 +50,9 @@ toInt.apply() ``` The `Nat.toInt` method provides -convenient shorthand for calling `nat.apply()`: +convenient shorthand for calling `nat.apply()`. +It accepts the instance of `ToInt` as an implicit parameter: ```tut:book -Nat.toInt[Succ[Succ[Succ[Nat._0]]]] +Nat.toInt[Nat._3] ``` diff --git a/src/pages/nat/length.md b/src/pages/nat/length.md index fd3ffa4..b8e5b55 100644 --- a/src/pages/nat/length.md +++ b/src/pages/nat/length.md @@ -1,7 +1,7 @@ -## Sizing generic representations +## Length of generic representations One use case for `Nat` is -determining the size of `HLists` and `Coproducts`. +determining the length of `HLists` and `Coproducts`. Shapeless provides the `shapeless.ops.hlist.Length` and `shapeless.ops.coproduct.Length` type classes for this. @@ -23,8 +23,7 @@ val coproductLength = coproduct.Length[Double :+: Char :+: CNil] Instances of `Length` have a type member `Out` that represents the length as a `Nat`. -We can either summon a `ToInt` ourselves -to turn the `Nat` into an `Int`: +We can either summon an instance of `ToInt` ourselves: ```tut:book implicitly[ToInt[hlistLength.Out]].apply() @@ -45,6 +44,9 @@ and exposes it as a simple `Int`: trait SizeOf[A] { def value: Int } + +def sizeOf[A](implicit size: SizeOf[A]): Int = + size.value ``` To create an instance of `SizeOf` we need three things: @@ -71,9 +73,6 @@ implicit def genericSizeOf[A, L <: HList, N <: Nat]( We can test our code as follows: ```tut:book:silent -def sizeOf[A](implicit size: SizeOf[A]): Int = - size.value - case class IceCream(name: String, numCherries: Int, inCone: Boolean) ``` diff --git a/src/pages/nat/random.md b/src/pages/nat/random.md index 856857e..73ab11b 100644 --- a/src/pages/nat/random.md +++ b/src/pages/nat/random.md @@ -1,7 +1,7 @@ ## Case study: random value generator Property-based testing libraries like [Scalacheck][link-scalacheck] -use type classes to generate random data for use in unit tests. +use type classes to generate random test data for unit tests. For example, Scalacheck has the `Arbitrary` type class that we can use as follows: @@ -23,7 +23,7 @@ This makes shapeless integration via libraries like In this section we will create a simple `Random` type class to generate random values of user-defined ADTs. -We will show how `Length` and `Nat` form +We will show how `Length` and `Nat` form a crucial part of the implementation: ```tut:book:invisible @@ -64,7 +64,7 @@ implicit val booleanRandom: Random[Boolean] = createRandom(() => scala.util.Random.nextBoolean) ``` -We can use these simple generators +We can use these simple generators via the `random` method as follows: ```tut:book @@ -75,7 +75,7 @@ for(i <- 1 to 3) println(random[Char]) ### Random products We can create random values for products -using the `Generic` and `HList` techniques +using the `Generic` and `HList` techniques from Chapter [@sec:generic]: ```tut:book:silent @@ -95,7 +95,7 @@ implicit def hlistRandom[H, T <: HList]( implicit hRandom: Random[H], tRandom: Lazy[Random[T]] -): Random[H :: T] = +): Random[H :: T] = createRandom(() => hRandom.get :: tRandom.value.get) ``` @@ -131,7 +131,7 @@ implicit def coproductRandom[H, T <: Coproduct]( } ``` -There problems with this implementation +There problems with this implementation lie in the 50/50 choice in calculating `chooseH`. This creates an uneven probability distribution. For example, consider the following type: @@ -144,10 +144,10 @@ case object Green extends Light ``` The `Repr` for `Light` is `Red :+: Amber :+: Green :+: CNil`. -An instance of `Random` for this type -will choose `Red` 50% of the time +An instance of `Random` for this type +will choose `Red` 50% of the time and `Amber :+: Green :+: CNil` 50% of the time. -A correct distribution would be +A correct distribution would be 33% `Red` and 67% `Amber :+: Green :+: CNil`. And that's not all. @@ -167,10 +167,10 @@ for(i <- 1 to 100) random[Light] // ... ``` -To fix this problem we have to alter +To fix this problem we have to alter the probability of choosing `H` over `T`. The correct behaviour should be to choose -`H` `1/n`^th^ of the time, +`H` `1/n`^th^ of the time, where `n` is the length of the coproduct. This ensures an even probability distribution across the subtypes of the coproduct @@ -197,7 +197,7 @@ implicit def coproductRandom[H, T <: Coproduct, L <: Nat]( ``` -With these modifications +With these modifications we can generate random values of any product or coproduct: ```tut:book diff --git a/src/pages/nat/summary.md b/src/pages/nat/summary.md index 23c24c1..2057c7e 100644 --- a/src/pages/nat/summary.md +++ b/src/pages/nat/summary.md @@ -1,12 +1,20 @@ ## Summary -In this chapter we discussed +In this chapter we discussed how shapeless represents natural numbers -and how to calculate the length -of an `HList` or `Coproduct`. +and how we can use them in type classes. +We saw some predefined ops type classes +that let us do things like calculate lengths +and access elements by index, +and created our own type classes +that use `Nat` in other ways. -Such calculations involve two parts: -one at the type level involving -the `Length` type classes and the `Nat` type, -and one at the value level involving -the `ToInt` type class and regular `Ints`. +Between `Nat`, `Poly`, and the variety of +type classes and examples we have seen in Part II, +we have seen a small part of +the comprehensive toolbox provided in `shapeless.ops`. +We don't need to use these tools to derive type classes, +which is the main use for shapeless discussed in this guide. +However, type classes like `Align`, `Mapper`, and `Length` +form substantial foundations that +make building our own type classes that much easier. diff --git a/src/pages/notes/todos.md b/src/pages/notes/todos.md index 2270d24..99ce09a 100644 --- a/src/pages/notes/todos.md +++ b/src/pages/notes/todos.md @@ -15,10 +15,10 @@ Still to do: - **DONE** Counting with `Nat` - **DONE** Generating `Arbitrary` instances as an example - Function interop - - Callout box on quirkiness of type inference with poly: - - `val len1: Int = lengthPoly("foo")` fails, but... - - `val len2 = lengthPoly("foo")` compiles, but... - - `val len3: Int = lengthPoly[String]("foo")` fails + - **DONE** Callout box on quirkiness of type inference with poly: + - **DONE** `val len1: Int = lengthPoly("foo")` fails, but... + - **DONE** `val len2 = lengthPoly("foo")` compiles, but... + - **DONE** `val len3: Int = lengthPoly[String]("foo")` fails - Built-in record operations - Performance - `cachedImplicit` diff --git a/src/pages/poly/index.md b/src/pages/poly/index.md index 13cdb9c..7f62407 100644 --- a/src/pages/poly/index.md +++ b/src/pages/poly/index.md @@ -1,23 +1,23 @@ # Functional operations on HLists {#sec:poly} -Regular Scala programs make heavy use +"Regular" Scala programs make heavy use of functional operations like `map` and `flatMap`. -A question arises: can we perform similar operations -on `HLists` and `Coproducts`? -The answer is "yes", but the code looks -a little different to regular Scala code. -Unsurprisingly, the mechanisms are type class based -and there are a suite of ops type classes -to help us out. +A question arises: can we perform similar operations on `HLists`? +The answer is "yes", +but the heterogeneous element types require us +to do things a little differently than in regular Scala. +Unsurprisingly the mechanisms are type class based +and there are a suite of ops type classes to help us out. Before we delve in to the type classes themselves, -however, we need to discuss some theory to understand -what operations involving functions look like -when applied to heterogeneously typed data structures. +we need to discuss how shapeless represents +*polymorphic* functions suitable for +mapping over heterogeneous data structures. ## Motivation: mapping over an HList -Let's take the `map` method as an example. +We'll motivate the discussion of polymorphic functions +with a look at the `map` method. Figure [@fig:poly:monomorphic-map] shows a type chart for mapping over a regular list. We start with a `List[A]`, supply a function `A => B`, @@ -25,18 +25,21 @@ and end up with a `List[B]`. ![Mapping over a regular list ("monomorphic" map)](src/pages/poly/monomorphic-map.pdf+svg){#fig:poly:monomorphic-map} -This model breaks down for `HLists` and `Coproducts` -because of the heterogenous nature of the element types. -Ideally we'd like a mapping -like the one shown in Figure [@fig:poly:polymorphic-map], -which inspects the type of each input element -and uses it to determine the type of each output element. -This gives us a closed, composable transformation. +The heterogeneous element types in an `HList` +cause this model to break down. +Scala functions have fixed input and output types, +so the result of our map will have to have +the same element type in every position. + +Ideally we'd like a `map` operation like +the one shown in Figure [@fig:poly:polymorphic-map], +where the function inspects the type of each input +and uses it to determine the type of each output. +This gives us a closed, composable transformation +that retains the heterogeneous nature of the `HList`. ![Mapping over a heterogeneous list ("polymorphic" map)](src/pages/poly/polymorphic-map.pdf+svg){#fig:poly:polymorphic-map} -Unfortunately, Scala functions are subject to a few restrictions: -they are not polymorphic and they can't have implicit parameters. -In other words, we can't choose an output type -based on input type of a regular function. -We need some new infrastructure to solve this problem. +Unfortunately we can't use Scala functions +to implement this kind of operation. +We need some new infrastructure. diff --git a/src/pages/poly/map-flatmap-fold.md b/src/pages/poly/map-flatmap-fold.md index 2194d91..2afbe02 100644 --- a/src/pages/poly/map-flatmap-fold.md +++ b/src/pages/poly/map-flatmap-fold.md @@ -1,8 +1,10 @@ ## Mapping and flatMapping using Poly -`HList` has a `map` method that -accepts a `Poly` as the mapping function. -Here's an example: +Shapeless provides a suite of +functional operations based on `Poly`, +each implemented as an ops type class. +Let's look at `map` and `flatMap` as examples. +Here's `map`: ```tut:book:silent import shapeless._ @@ -23,8 +25,10 @@ object sizeOf extends Poly1 { (10 :: "hello" :: true :: HNil).map(sizeOf) ``` -We can use `map` provided -the `Poly` provides `Cases` for every member of the `HList`. +Note that the elements in the resulting `HList` +have types matching the `Cases` in `sizeOf`. +We can use `map` with any `Poly` that +provides `Cases` for every member of our starting `HList`. If the compiler can't find a `Case` for a particular member, we get a compile error: @@ -32,8 +36,9 @@ we get a compile error: (1.5 :: HNil).map(sizeOf) ``` -We can also `flatMap` over an `HList` provided -every corresponding case in our `Poly` returns another `HList`: +We can also `flatMap` over an `HList` +provided every corresponding case in our `Poly` +returns another `HList`: ```tut:book:silent object valueAndSizeOf extends Poly1 { @@ -52,19 +57,23 @@ object valueAndSizeOf extends Poly1 { (10 :: "hello" :: true :: HNil).flatMap(valueAndSizeOf) ``` -If there is a missing case or one of the cases doesn't return an `HList`, -we get a compilation error: +Again, we get a compilation error if there is a missing case +or one of the cases doesn't return an `HList`: ```tut:book:fail // Using the wrong Poly with flatMap: (10 :: "hello" :: true :: HNil).flatMap(sizeOf) ``` +`map` and `flatMap` are based on type classes +called `Mapper` and `FlatMapper` respectively. +We'll see an example that makes direct use of `Mapper` in a moment. + ## Folding using Poly In addition to `map` and `flatMap`, shapeless also provides -`foldLeft` and `foldRight` operations on `HLists`: +`foldLeft` and `foldRight` operations based on `Poly2`: ```tut:book:silent import shapeless._ diff --git a/src/pages/poly/poly.md b/src/pages/poly/poly.md index faee1d9..bcef996 100644 --- a/src/pages/poly/poly.md +++ b/src/pages/poly/poly.md @@ -1,11 +1,8 @@ ## Polymorphic functions -Shapeless provides the `Poly` datatype -for representing polymorphic functions. -At its core, a `Poly` is an object with an `apply` method -that accepts an implicit `Case` parameter -to map input types to output types. -Here is a simplified explanation of how it all works. +Shapeless represents polymorphic functions +using a type called `Poly`. +Here is a simplified explanation of how it works. Note that this isn't real shapeless code---we're eliding a lot of extra stuff that makes real shapeless `Polys` @@ -13,9 +10,9 @@ much more flexible and easier to use. ### How Polys work -The implementation of `Poly` boils down to the following. -The `apply` method delegates all concrete functionality -to a type class, `Case`: +At its core, a `Poly` is an object with a generic `apply` method. +In addition to its regular parameter of type `A`, +`Poly` accepts an implicit parameter of type `Case[A]`: ```tut:book:silent // This is not real shapeless code. @@ -32,66 +29,54 @@ trait Poly { } ``` -We'll define some extra helpers to simplify the examples below: - -```tut:book:silent -type CaseAux[P, A, R] = Case[P, A] { type Result = R } - -def createCase[P, A, R](func: A => R): CaseAux[P, A, R] = - new Case[P, A] { - type Result = R - def apply(a: A): R = func(a) - } -``` - -`Case` maps an input type `A` to an output type `Result`. -It also has a second type parameter `P` -referincing the singleton type of the `Poly` it is supporting -(we'll come to this in a moment). -When we create a `Poly`, we define the `Cases` -as `implicit vals` within its body: +When we define an actual `Poly`, +we provide instances of `Case` +for each parameter type we care about. +These implement the actual function body: ```tut:book:silent // This is not real shapeless code. // It is purely for illustration. object myPoly extends Poly { - implicit def intCase: CaseAux[this.type, Int, Double] = - createCase(num => num / 2.0) - - implicit def stringCase: CaseAux[this.type, String, Int] = - createCase(str => str.length) + implicit def intCase = + new Case[this.type, Int] { + type Result = Double + def apply(num: Int): Double = num / 2.0 + } + + implicit def stringCase = + new Case[this.type, String] { + type Result = Int + def apply(str: String): Int = str.length + } } ``` -The `Cases` define the behaviour for each input type. When we call `myPoly.apply`, the compiler searches for the relevant implicit `Case` and fills it in as usual: -```scala -myPoly.apply(123) // search for a `Case[myPoly.type, Int]` +```tut:book +myPoly.apply(123) ``` -But how do the `Cases` end up in implicit scope? -There is some subtle behaviour that makes this work. +There is some subtle scoping behaviour here +that allows the compiler to locate instances of `Case` +without any additional imports. +`Case` has an extra type parameter `P` +referincing the singleton type of the `Poly`. The implicit scope for `Case[P, A]` includes the companion objects for `Case`, `P`, and `A`. -We defined `P` as the singleton type `myPoly.type` -and it turns out that -the companion object for `myPoly.type` is `myPoly` itself, -so the `Cases` defined in the body of the `Poly` -are always in implicit scope: - -```tut:book -myPoly.apply(123) // search for a `Case[myPoly.type, Int]` -myPoly.apply("hello") // search for a `Case[myPoly.type, String]` -``` +The companion object for `myPoly.type` is `myPoly` itself, +so `Cases` defined in the body of the `Poly` +are always in scope no matter where the call site is. ### Poly syntax -The code so far this chapter hasn't been real shapeless code. -Here's our demo function from above rewritten in proper syntax: +The code above isn't real shapeless code. +Fortunately, shapeless makes `Polys` much simpler to define. +Here's our `myPoly` function rewritten in proper syntax: ```tut:book:silent import shapeless._ @@ -109,18 +94,20 @@ There are a few key differences with our earlier toy syntax: 1. We're extending a trait called `Poly1` instead of `Poly`. Shapeless has a `Poly` type and a set of subtypes, - `Poly1` through `Poly2`, supporting different arities + `Poly1` through `Poly22`, supporting different arities of polymorphic function. - 2. The `Case` and `Case.Aux` types don't include + 2. The `Case.Aux` types doesn't seem to reference the singleton type of the `Poly`. - In this context `Case` actually refers to - a type alias defined within the body of `Poly1`. + `Case.Aux` is actually actually a type alias + defined within the body of `Poly1`. The singleton type is there---we just don't see it. 3. We're using a helper method, `at`, to define cases. + This lets us eliminate a lot of boilerplate + such as writing out full definitions of `Result` and `apply`. -These syntactic differences aside, +Syntactic differences aside, the shapeless version of `myPoly` is functionally identical to our toy version. We can call it with an `Int` or `String` parameter @@ -176,3 +163,38 @@ total(10) total(Option(20.0)) total(List(1L, 2L, 3L)) ``` + +

+*Idiosyncrasies of type inference* + +`Poly` pushes Scala's type inference out of its comfort zone. +We can easily confuse the compiler by +asking it to do too much inference at once. +For example, the following code compiles ok: + +```tut:book:silent +val a = myPoly.apply(123) +val b: Double = a +``` + +However, if we try to combine the two lines in to one +we get a compilation error: + +```tut:book:fail +val a: Double = myPoly.apply(123) +``` + +If we give the compiler a hint by +telling it what the parameter type is, +the code compiles again: + +```tut:book +val a: Double = myPoly.apply[Int](123) +``` + +This behaviour is confusing and annoying. +Unfortunately there are no concrete rules to follow to avoid problems. +The only general guideline is +to avoid over-constraining the compiler---solve one constraint at a time +and give it a hint when it gets stuck. +
diff --git a/src/pages/poly/type-class.md b/src/pages/poly/product-mapper.md similarity index 72% rename from src/pages/poly/type-class.md rename to src/pages/poly/product-mapper.md index 12feb1e..b173043 100644 --- a/src/pages/poly/type-class.md +++ b/src/pages/poly/product-mapper.md @@ -1,8 +1,8 @@ ## Defining type classes using Poly We can use `Poly` and type classes -such as `Mapper` and `FlatMapper` -in the definitions of our own type classes. +like `Mapper` and `FlatMapper` +as building blocks for our own type classes. As an example let's build a type class for mapping from one case class to another: @@ -12,8 +12,8 @@ trait ProductMapper[A, B, P] { } ``` -We can create a type class instance -using a `Mapper` and a pair of `Generics`: +We can create an instance of `ProductMapper` +using `Mapper` and a pair of `Generics`: ```tut:book:silent import shapeless._ @@ -36,14 +36,13 @@ implicit def genericProductMapper[ } ``` -Interestingly, -the value of the `Poly` does not appear in this code. +Interestingly, although we define a type `P` for our `Poly`, +we don't reference any values of type `P` anywhere in our code. The `Mapper` type class uses implicit resolution to find `Cases`, -so we only need to know the singleton type of the `Poly` -to do the mapping. +so we only need to know the type to do the mapping. -We can create an extension method -to make the type class easy to use. +Let's create an extension method +to make `ProductMapper` easier to use. We only want the user to specify the type of `B` at the call site, so we use some indirection to allow the compiler to infer the type of the `Poly` @@ -62,10 +61,7 @@ implicit class ProductMapperOps[A](a: A) { } ``` -The resulting `mapTo` syntax looks like a single method call, -but is actually two calls: -one call to `mapTo` to fix the `B` type parameter, -and one call to `Builder.apply` to specify the `Poly`: +Here's an example of the method's use: ```tut:book:silent object conversions extends Poly1 { @@ -81,3 +77,9 @@ case class IceCream2(name: String, hasCherries: Boolean, numCones: Int) ```tut:book IceCream1("Sundae", 1, false).mapTo[IceCream2](conversions) ``` + +The `mapTo` syntax looks like a single method call, +but is actually two calls: +one call to `mapTo` to fix the `B` type parameter, +and one call to `Builder.apply` to specify the `Poly`. +Some of shapeless' built-in ops extension methods use similar tricks. diff --git a/src/pages/poly/summary.md b/src/pages/poly/summary.md index 70bf31d..d5e39ad 100644 --- a/src/pages/poly/summary.md +++ b/src/pages/poly/summary.md @@ -2,10 +2,8 @@ In this chapter we discussed *polymorphic functions* whose return types vary based on the types of their parameters. -We discussed shapeless' `Poly` type -that specifies cases as implicit values, -and saw how it is used to implement -functional operations such as +We saw how shapeless' `Poly` type is defined, +and how it is used to implement functional operations such as `map`, `flatMap`, `foldLeft`, and `foldRight`. Each operation is implemented as an extension method on `HList`, From 0771af5b764097c6ef27ad751d9b6f2371b5523c Mon Sep 17 00:00:00 2001 From: Dave Gurnell Date: Mon, 31 Oct 2016 18:06:04 +0000 Subject: [PATCH 2/3] Rebuild PDF --- dist/shapeless-guide.pdf | Bin 414930 -> 415455 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/dist/shapeless-guide.pdf b/dist/shapeless-guide.pdf index 0a8260456cb04403ac7704f0e1fe53a784e97d91..c885b069fd768d819952ac7d8bf73f9ff3670e9e 100644 GIT binary patch delta 11488 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 delta 10973 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 Date: Tue, 1 Nov 2016 07:39:20 +0000 Subject: [PATCH 3/3] Add conclusion; tweak chapter numbers; mention source code in intro --- dist/shapeless-guide.pdf | Bin 415455 -> 417388 bytes src/meta/metadata.yaml | 2 ++ src/pages/conclusion/index.md | 32 ++++++++++++++++++++++++++++++++ src/pages/intro/index.md | 5 +++-- src/pages/intro/thisbook.md | 19 ++++++++++--------- src/pages/nat/summary.md | 12 +++++------- src/pages/notes/todos.md | 4 ++-- 7 files changed, 54 insertions(+), 20 deletions(-) create mode 100644 src/pages/conclusion/index.md diff --git a/dist/shapeless-guide.pdf b/dist/shapeless-guide.pdf index c885b069fd768d819952ac7d8bf73f9ff3670e9e..ec837522a3411e7b565cd042759e94131de9b655 100644 GIT binary patch delta 43146 zcmZsibx>SQv+&u)-Q696ySq#9;6a1CJBzz(2p$L!+!uG(;KAM99lkty-uu;ktL`6L zH9OOLx~Kc>^qJrES+Br9X~VBJ5d?52=TlLEcz8I3g%Mm_oz0Bx5ImRW(#PYL$;o|VahB;&=1m`#8z^~nZA6NVOMS+VOVxy|tgw_>&IqU>J<=yxeV zmK{Bb?_%_vD~&BOW75JTBaUGo0Xnw5d_R%uFX@!T!mTwfQ<>$xwvPE)bV4sES3j6d zI*A9bbYIhjti1PCq|biyl~c~~b9|95W>~!q>`fB>wS)@S2jcK$A4^KKO>CF35_DU~ zJ~*ehjuXRo2a+G{e6NhVu>Ed5sZps6>Nh*p&vD)$iqyQNT%`h> znO1ko2z9l>T=hzd=sk0_0kr8-B&d^#O9;(at$Idsatih_XAOa?{d~NWyn5uIr5-CW zUE)e7lir{D3hA7^LS`jJAFbW^{6xcftsp~F%5>74TB0^)RlE%~A?{fxG&lyw=g|Dl z3@`V5mAH9;P*)gU++lEru+yItf=BUp2BzKGm~`0q5~A!&KU9{MO}a#|IelzSwWhLA zlde{LC!JnaVliEm1pIY-JIU)=7`g^r)8f2el{Z$ZdjPJiDjI=NXD=>QSxzOM1o>1zna3|R*3lqSR-t7;h z2C;Fov;OZtNvig6<%%TM>NWOTAU7AP+9)Db1XNkqGC5AwsVh!`)bESum73BMcOJ

Ttd$!FIb& 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�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 delta 41208 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ⅈ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 diff --git a/src/meta/metadata.yaml b/src/meta/metadata.yaml index 4c426d7..dfc45de 100644 --- a/src/meta/metadata.yaml +++ b/src/meta/metadata.yaml @@ -72,6 +72,8 @@ pages: - nat/ops.md - nat/summary.md + - conclusion/index.md + - notes/todos.md - links.md ... diff --git a/src/pages/conclusion/index.md b/src/pages/conclusion/index.md new file mode 100644 index 0000000..792ce07 --- /dev/null +++ b/src/pages/conclusion/index.md @@ -0,0 +1,32 @@ +# Conclusion #{-} + +With Part II's look at `shapeless.ops`, +we have arrived at the end of this guide to shapeless. +We hope you found it useful for understanding +this fascinating and powerful library. + +As functional programmers +we value abstraction above all else. +Concepts like functors and monads +arise from years of programming research: +writing code, spotting patterns, +and making abstractions to remove redundancy. +Shapeless raises the bar for abstraction in Scala. +Tools like `Generic` and `LabelledGeneric` +provide an interface for abstracting over data types +that we previously thought unique and distinct. + +There have traditionally been two barriers to entry +for aspiring new shapeless users. +The first is the wealth of theoretical knowledge +and implementation detail +required to understand the bigger picture. +Hopefully this guide has done its job in this regard. +The second barrier is the fear and uncertainty +surrounding a library that is seen +as "academic" and "advanced". +We can overcome this by sharing knowledge +and showing each other the use cases, +advantages, and disadvantages of its use. +So please share this book with a friend... +and let's scrap some boilerplate together! diff --git a/src/pages/intro/index.md b/src/pages/intro/index.md index ad80d50..24eb73d 100644 --- a/src/pages/intro/index.md +++ b/src/pages/intro/index.md @@ -6,9 +6,10 @@ We assume shapeless 2.3.2 and either Typelevel Scala 2.11.8+ or Lightbend Scala 2.11.9+ / 2.12.1+. Shapeless is large library, -so rather than cover everything it has to offer, +so rather than cover everything it has to offer we will concentrate on a few compelling use cases -and use them to build a picture of the tools and patterns available. +and use them to build a picture +of the tools and patterns available. Before we start, let's talk about what generic programming is and why shapeless is so exciting to Scala developers. diff --git a/src/pages/intro/thisbook.md b/src/pages/intro/thisbook.md index 57dbcfb..740c6cc 100644 --- a/src/pages/intro/thisbook.md +++ b/src/pages/intro/thisbook.md @@ -66,16 +66,17 @@ we provide a theoretical primer in three chapters: our own version of Scalacheck's `Arbitrary`.

diff --git a/src/pages/nat/summary.md b/src/pages/nat/summary.md index 2057c7e..6abebd8 100644 --- a/src/pages/nat/summary.md +++ b/src/pages/nat/summary.md @@ -11,10 +11,8 @@ that use `Nat` in other ways. Between `Nat`, `Poly`, and the variety of type classes and examples we have seen in Part II, -we have seen a small part of -the comprehensive toolbox provided in `shapeless.ops`. -We don't need to use these tools to derive type classes, -which is the main use for shapeless discussed in this guide. -However, type classes like `Align`, `Mapper`, and `Length` -form substantial foundations that -make building our own type classes that much easier. +we have seen just a small fraction of +the toolbox provided in `shapeless.ops`. +There are many other ops type classes +that provide a comprehensive foundation +on which to build our own code. diff --git a/src/pages/notes/todos.md b/src/pages/notes/todos.md index 99ce09a..81dbabd 100644 --- a/src/pages/notes/todos.md +++ b/src/pages/notes/todos.md @@ -1,4 +1,4 @@ -# TODOs +# TODOs #{-} Still to do: @@ -25,5 +25,5 @@ Still to do: - Maybe `Cached` - Maybe - Check cross references - - Final summary + - **DONE** Final summary - **SHIP IT!**