-
Notifications
You must be signed in to change notification settings - Fork 300
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add more Type Class deriving details #338
Conversation
From today's conversation on Slack
Would this be an appropriate place to put info about eta abstraction to help fix some stack overflow issues? |
Yeah. That seems like a good addition. |
This should be ready to merge now (pending any additional feedback). |
Points suggests a collection of {x,y} values.
Applied all of @thomashoneyman's suggestions |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A couple more small suggestions for the content but this otherwise is looking good to me. With those updated I think this is good to go.
Co-authored-by: Thomas Honeyman <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a nice addition!
This is good, but the stuff beyond Generic is not suitable for the language reference, as it's more of a how-to/explanation and covers things which aren't part of the language. |
Section removed. Hoping to include that in some sort of language "guide" in the future. |
Thanks. I think it would be good to put those other paragraphs into the “guides” directory instead. Even if there’s a bit of overlap between the reference and the guide, I think that’s fine. |
Oh sorry; to clarify, I think the stuff under the “Deriving with Generic” heading is also not really suitable for the language reference. |
I agree the content deserves a place in the documentation (rather than being removed altogether) and perhaps we could link to it here as further reading in the guides section. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm happy with this content ending up in the guides section and linked from the language reference.
The first two sections (built-in and newtype) are duplicated across both the guide and the language reference. I feel like this content is equally relevant for the guide, since the generic section builds on these. There are certainly other ways to organize this material, such as:
But I'm thinking it's best to save this reorganization work for later. My understanding is that the I'm still unsure what's considered within scope of these sections. In hindsight, it seems like the |
The duplication is not a problem in my mind. I’d much rather have a little bit of duplication here and there than have documentation resources which try to cater to everyone at once. The I agree that the example merged in #331 probably didn’t belong in the language reference either, in retrospect. The main criterion is whether something is part of the language or whether it is part of a library; if it’s the latter, it probably shouldn’t go in here. Of course the boundaries aren’t always clear: it’s difficult to discuss do notation without mentioning monads, for example. |
From today's conversation on Slack.
Fixes #155
I think there are better ways to organize this content, but wanted to track this first version.