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

Use standard names for FinSet and FinRel #217

Merged
merged 3 commits into from
Jul 27, 2020

Conversation

epatters
Copy link
Member

@epatters epatters commented Jul 25, 2020

Resolves #215 and follows up #184/#197. In summary:

  • FinOrd and FinOrdFunction are renamed to FinSet and FinFunction
  • FinOrdRelOb and FinOrdRelation are renamed to FinRel and FinRelation
  • The abstract type FinFunction has concrete subtypes FinFunctionCallable and FinFunctionVector and FinRelation has subtypes FinRelationCallable and FinRelationMatrix. The concrete types are exported but should rarely be needed in user code, which can use the constructors for FinFunction and FinRelation
  • Type parameters are used to distinguished the usual categories from their skeleta. So, FinSet{Int} is the skeleton of FinSet and FinSet{<:AbstractSet} is FinSet. Currently, only the former is implemented but the latter could be straightforwardly implemented along these lines.

I really hope this is the last time we need to rewrite this interface, so if you have concerns, speak now or forever hold your peace :)

@epatters epatters merged commit 7526970 into AlgebraicJulia:master Jul 27, 2020
@epatters epatters deleted the finset-refactor branch July 27, 2020 21:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

FinSet nomenclature
1 participant