In toCsv (ePub p 157, dropLeadingComma will leave a leading space. In the case statement, the first case is ‘,’:s’ → s’ and it should be ‘,’:’ ‘:s’ → s’
Also p 157. “Notice in the type signatures for the fold functions that we have a type class constraint on t, but in our type signature we’re applying the type a to t. That’s because t is a higher kinded type variable …” This is a bit terse (after reading it over a few times, I realized that this is really mind-blowing ). I wonder if there could be some additional discussion relating the applying types (e.g., applying types to Either) to higher kinded variables.