-
Notifications
You must be signed in to change notification settings - Fork 18
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
Rewrite and overhaul of AmplNLWriter. #125
Conversation
Ideally, some, or all of this would be migrated into MOI.FileFormats as an NL submodule. This needs many more tests before merging. This implementation is simplier than the current one, because it doesn't try to detect or simplify linear expressions.
Okay, this is now passing all tests so I'm pretty confident there aren't any lingering bugs. I still need to benchmark against the old version, but I'd expect this version to be significantly quicker. I have some ideas for other improvements, but that can wait for a different PR. On the whole, this version is much more maintainable. A lot of the core code was untouched since 2016, and I've added a lot of comments throughout on the format. Unfortunately the PDFs aren't the most descriptive for some features. |
Okay, the design is a lot better now. I don't know why I didn't consider it before. This PR is large and unwieldy, so I'm going to merge it as is, and make some smaller follow-up PRs. I'll hold off tagging a new version for a while to give people time to try out the |
Ideally, some, or all of this would be migrated into
MOI.FileFormats as an NL submodule.
This needs many more tests before merging.This implementation is simplier than the current one, because it
doesn't try to detect or simplify linear expressions.
Closes #15 (They're commented out for a reason, and now much better explained)
Closes #72
Closes #108 (We don't need persistent storage between sessions.)
Closes #123