<div dir="auto">You can find it all in<div dir="auto"><br></div><div dir="auto"><a href="https://hackage.haskell.org/package/adjunctions-4.4/docs/Data-Functor-Rep.html">https://hackage.haskell.org/package/adjunctions-4.4/docs/Data-Functor-Rep.html</a></div><div dir="auto"><br></div><div dir="auto">Length-indexed vectors are representable functors and thus can be treated essentially as functions, winning loads of instances for free. Whether those are the instances you want is another question, but they're valid.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 4, 2020, 8:12 PM Carter Schonwald <<a href="mailto:carter.schonwald@gmail.com">carter.schonwald@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">david, henning, could you expand on that intuition? i'm a bit derped up from nyc being crazy stresses and doing my best to not engaged unconstructively on interpersonal frustractionsl on the internet, and i"m sure the exposition would benefit other please :) <div><br></div><div>-Carter</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 4, 2020 at 7:52 PM Henning Thielemann <<a href="mailto:lemming@henning-thielemann.de" target="_blank" rel="noreferrer">lemming@henning-thielemann.de</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><br>
On Thu, 4 Jun 2020, Carter Schonwald wrote:<br>
<br>
> *i believe* the way to write the monad instance would be to implement a join :: SizedLIst n (SizedList n a) -><br>
> SizedList n a <br>
> that picks the diagonal. But i could be wrong? it wasn't a priority for me at the time, but would that "diagonal"<br>
> / trace be the right way to induce a bind? <br>
<br>
Sure, that's analogous to instance Monad ((->) a).</blockquote></div>
_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" target="_blank" rel="noreferrer">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" rel="noreferrer noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
</blockquote></div>