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

Vocabulary Clean Up #241

Closed
aguynamedryan opened this issue Jun 11, 2019 · 1 comment
Closed

Vocabulary Clean Up #241

aguynamedryan opened this issue Jun 11, 2019 · 1 comment

Comments

@aguynamedryan
Copy link
Contributor

In order to address a few of the issues in Chisel, Marc and I might take a stab at overhauling a very convoluted part of ConceptQL -- the vocabulary operators. We currently have 3 different ways to add vocabulary operators: hard-coded (i.e. we've written explicit code for an operator), read in from a CSV, or read in and generated dynamically from Lexicon. All of these ways are supported by 4 main vocabulary classes that have been jerry-rigged to work together.

The code to support this is pretty awful and is why we're seeing weird issues with warnings (#184), missing columns (#145), duplicate operators (#201), and other issues you haven't discovered yet (handling vocab operators that appear in one Jigsaw instance but not another, etc).

Marc and I believe we can eliminate almost all of the hard-coded operators in favor of dynamically generating virtually all vocabulary operators. We might be able to eliminate the CSV as well. We'll clean up the vocabulary code and hopefully reduce the classes to 1 main class and maybe a couple small subclasses. This will be a good opportunity to possibly address the slowness you're seeing in Chisel with certain "select all" algorithms as well. We can also probably improve the operator descriptions in the JAM as well.

This is probably a multi-day project, but most of the bugs we want to address in Chisel are a direct result of the code I'm hoping to replace.

@aguynamedryan
Copy link
Contributor Author

This is completed to my satisfaction. @marc-outins, anything we missed in this ticket? Looks like #237 still needs to be addressed but that looks like it's in its own ticket.

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

No branches or pull requests

2 participants