-
Notifications
You must be signed in to change notification settings - Fork 247
Slimming down Data.X
#1487
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
Comments
Hmm so I was actually planning on going in the opposite direction for the From the sound of it, you want to |
Actually, I'm totally fine with a "fat" |
Great 👍 So apart from #1489 what are the current dependency problems with the (Going to keep this issue open as a reminder to document this convention more clearly in README.agda) |
The |
When you say "useful relations", you really mean the decidability proofs don't you? 😆 This is a discussion that comes up every 6 months or so. We keep making tweaks to it, but we haven't yet settled on a solution that satisfies everyone. The basic problem is that many decidability proofs require "properties" such as injectivity of constructors to get the recursive case through. This means that they can't live in The current state of affairs is therefore that when you only need to make a decision and not actually use the proof then you should use the boolean based decision procedures from Historically I was a little bit reluctant to start adding |
I certainly wouldn't look at it as "lost the battle"... just bowed to the inevitable! 😆 [I forget the convention between Inside the library, I feel that it ought to be possible to use certain very basic things without incurring a large transitive dependency burden. I'm not advocating for a systematic breaking down of everything into small pieces (I'd like to... but it's unrealistic). Just a few select ones that are used a lot, and thus contribute a fair bit of 'skew' to the dependency graph. |
Re-looking at this, it might be that this is largely moot - I was really thinking about the relations underlying the decidable ones, but these seem to already be exported from Now, one could make the case that there are properties that are more basic than others (such as the ones that underlie decidability). But that can be punted to the future. This particular issue doesn't really have anything outstanding to do, so I'm going to close it. We can let the issue around decidability predicates resurface organically. |
Data.Bool
imports a huge amount of stuff because it doesThat
Data.Bool.Properties
imports a lot of stuff is not surprising (although it probably should be split in the same way many other things are). The main thing here is that those 4 re-exports should really be inData.Bool.Properties.Core
, which could then have minimal dependencies, and thence lettingData.Bool
have way fewer as well.The text was updated successfully, but these errors were encountered: