-
Notifications
You must be signed in to change notification settings - Fork 11
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
Represent and run a minion model in Rust #28
Conversation
Feedback would be appreciated @ozgurakgun @ChrisJefferson @lixitrixi @Kieranoski702 (This can wait till Monday, I know I am working unsociable hours this week) |
No idea if the CI will work or not - as described in #27 minion is not threadsafe yet, but cargo tests run multithreaded Tests run on host-server, haven't tested it on mac yet... No outputs yet for the run.rs version , but there are logfiles that show that minion is doing stuff and getting solutions! |
@@ -1,7 +1,8 @@ | |||
// adapted from | |||
// - https://github.com/gokberkkocak/rust_glucose/blob/master/build.rs | |||
// e https://github.com/gokberkkocak/rust_glucose/blob/master/build.rs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this just a typo?
I think this is quite good, and it would be nice to merge, because while lots of things still need doing, it gives us all a base for hacking on, where things run "end to end". |
To deal specifically with the crashing issue, I'd suggest changing the start of
This just makes a global mutex, and then locks it while in runMinion. This stops multiple calls to runMinion running at once (obviously). C++ is quite good at cleaning up (the mutex should be automatically unlocked when this function exits), so this should create problems even if minion exits with an error. |
4ecd1a5
to
a0cf992
Compare
or should I? this is still marked as a draft? |
As long as you are happy with this still referencing my dev branch of minion, it can be merged. |
Might be good to hack over later |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
some minor comments
@ozgurakgun I've renamed those things suggested. |
974fe49
to
3e3e0a9
Compare
I have a model running in Minion from a rust representation.
There are example problems for both the low level bindings and the Minion Rust AST versions inside raw_bindings.rs and run.rs respectively.
The work is very incomplete, things I still need to do (that I know about) are:
Memory management / freeing C++ stuff