-
Notifications
You must be signed in to change notification settings - Fork 246
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
Refinement types plus Null
/NonNull
#2103
Conversation
Fixed merge conflict, but the (previously committed) line about |
Are you aware of http://agda.github.io/agda-stdlib/Data.Refinement.html ? |
Oh, for heaven's sake, RTFL...! 🤦 Still, what is there is fairly minimal, and few (none?) instantiations of the refinement concept elsewhere in the library, so should be room for ... refactoring, and reconciling the UPDATED: if #2260 is merged, then besides the wish for a conceptual reconciliation of all the |
I'm going to close this, in favour of #2260 |
EXPERIMENTAL/DRAFT: See #2092.
Refinement
types, and their syntax, are (at present) neither here nor there, but the rest of the PR is a moderately extended exploration of one mode of use: defining theRefinement
associated with beingnon-null
for a 'typeclass' supporting anull
/non-null
field... includingNat
,List
, ...Possible target(s):
head
function on `List'; UPDATED superseded/specialised by AddNonNull
toData.List.Relation.Unary.NonNull
on the model ofData.Nat.Base.NonZero
#2260 ?Data.List.NonEmpty
?