-
Notifications
You must be signed in to change notification settings - Fork 131
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
Would you be interested in a binding to the Julia Language #98
Comments
Hi, thanks for the interesting proposal. Personally I'm not very familiar with Julia and I only use it exceptionally. Now, the C solver interface has not changed in quite some time now and I don't foresee needs to further change it (except maybe at some point deprecating the How does it sound for you? Do you already have some kind of plan in mind? |
I'm actually not sure maintaining this binding as part of this repository would be the best idea. Here is what i have in mind:
This would be the ideal way to do this from a Julia standpoint, as it would make installation using the Julia package manager trivial and reproducible. I'm not to familiar with the first two steps and i am currently a bit busy with other projects. My proposal would be a sustainable, discoverable and reproducible solution. However your proposal would be faster to implement and involve:
Since there is no time pressure to have this wrapper i would encourage whoever implements it to pick the first approach as it would be more sustainable. This person might be very well me be but i currently don't see HPIPM on the critical path of any of my projects. I would also like to keep this issue open for future reference in case anybody is interested. |
Ok I see, thanks for pointing out the good way of doing this in Julia, as I said I'm not very familiar with it. Unfortunately in this period I don't have enough time to invest in this, but obviously I would provide support to whoever wants to take over the effort. |
To produce a Julia binding for your solver no changes to your code should be required.
I am wrapping an proprietary NLP solver with an C interface in Julia. In this case they distribute a shared library and some header files. I generate a header file for this C library and tell Julia where to find the shared library and that's about it and have an interface in Julia that uses C types which i then wrap in more user facing Julia code. In this project I'm currently at the stage of making a JuMP (modelling language) binding for the solver. The workflow to update an existing binding would be:
For clarification Hpipm.jl is the user facing repo which has Hpipm.jll as dependency which builds the platform specific shared libary for the users Julia installations calling conventions and standard C/Fortran libraries in so far as that is relevant. |
Hello,
i could imagine writing a binding for the Julia language which would make the QP solver usable from the JuMP modeling language.
Is that something you would like to see?
I'm not unaware that you removed Julia code in 2019.
The text was updated successfully, but these errors were encountered: