well-typed / generics-sop

Generic Programming using True Sums of Products
BSD 3-Clause "New" or "Revised" License
157 stars 48 forks source link

Document the design of All #137

Open treeowl opened 3 years ago

treeowl commented 3 years ago

It's not at all obvious to the casual reader why All is defined as it is, and in particular what SListI is really about. This should be explained.

kosmikus commented 3 years ago

You're absolutely right, this should be documented. But even I have to recover that information, so it's not trivial. I'll try to do this.

kosmikus commented 3 years ago

(Also, the design has changed a number of times, and while SListI is now just All Top, it used to be separate. So in a way, the justification for even having SListI separately is now relatively weak.)