<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p>"Square root of negative one" doesn't make a lot of sense if you
      ignore the context of complex arithmetic. And it appears to make
      even less sense that this expression should have several different
      solutions. Yet quaternions are used today to describe the rotation
      of robots.</p>
    <p>In other words: Robots – more than meets the i! Robots are cool.
      Don't hate on robots. Don't be uncool.</p>
    <p>An analog is true for <i>Traversable</i> and <i>Foldable</i>.
      Part of the missing context here is that you can write generic
      functions and later plug in things like the 1-tuple (<i>Identity</i>)
      and get cool things. Just look at lenses.</p>
    <p>What the instances in question really show is that some
      operations are transparent in relation to type-level products
      (i.e. tuples). A different place that shows the same are functions
      like "first" and "second" that you'll find in the context of
      profunctors, categories, and arrows. There's more than meets the
      eye here, and part of the reason you don't get to benefit a lot
      from it is that that's still an active area of research. From my
      own gut feeling it may well be where part of the future of
      programming lies. Which, in my eyes, is pretty cool.</p>
    <p>But then I'm just a random type still in the process of folding
      Haskell theory through my Identity.</p>
    <p>Cheers,<br>
      MarLinn</p>
  </body>
</html>