Skip to content
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

non-parametric interval for type stability #143

Open
ExpandingMan opened this issue Jun 15, 2023 · 1 comment
Open

non-parametric interval for type stability #143

ExpandingMan opened this issue Jun 15, 2023 · 1 comment

Comments

@ExpandingMan
Copy link

I have found myself dealing with unions of disjoint intervals sufficiently often that I feel it's about time I wrote a package for it. I think it's good for that to be a separate package from this, partially because unions of Interval are not closed, so my package will have its own union function that always returns the union type.

It quickly became clear to me that I'm going to need a union type which does not specify its openness via type parameters for anything in my package to be type stable (in particular even the containers could not be type stable for Interval). I've been calling this type GenericInterval{T} <: AbstractInterval{T}. Would there be any interest in me adding that to this package instead of putting it in my own?

As an aside, I'm self conscious of the whole DomainSets thing, and not super comfortable with what I'm doing, particularly as my implementation so far only supports unions of finitely many intervals, but I figure if I don't restrain myself I'm going to wind up spending 5 years writing a package that describes arbitrary sets on arbitrary manifolds of any dimension.

@nignatiadis
Copy link

nignatiadis commented Jun 16, 2023

This is a feature I have also wanted for a while. See invenia/Intervals.jl#217 for a related effort.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants