Hey <@UB2J9BQA0>, I notice that you've been helpi...
# general
w
Hey @hundreds-father-404, I notice that you've been helping out with the qiskit repo, and I also noticed that qiskit is migrating a lot of the code to rust, I was wondering if you have all maintain pants plugins to handle building both python and rust python extension libraries
👀 1
h
Hello! We don't use pantsbuild with Qiskit projects. I mostly work on the infrastructure for documentation, and the repositories are simple enough that I haven't invested the political capital in convincing people to adopt a new tool. For example, qiskit/documentation wouldn't really benefit from caching because the repo is so small already I think Qiskit SDK could benefit from using Pants because their code base is much larger. I don't work as much on that repo, so haven't taken the time to propose adopting pants because there have been so many other projects
What are you all doing at Q-ctrl?
w
gotcha thanks @hundreds-father-404, Q-CTRL works on the quantum computing space as well, and interfaces with qiskit/python in general, we have been evaluating solutions to support languages other than Python in our code base and rust is a candidate
🙌 1
and agreed the qiskit repo might benefit from pants
h
Cool! Yeah, our docs talk a bit about Q-CTRL as one of our key partners :) We've had a great experience with rust at IBM Quantum and Qiskit. Ditto pantsbuild itself. PyO3 is an excellent library that lets you combine Python and Rust. It's a neat architecture because you can use Rust for the critical path of your performance, which is often only like 5-20% of your code base. Then stick with Python for the rest, which is much easier to write for most devs The biggest downside imo is the learning curve. Although, none of the qiskit devs had used rust before and they're doing pretty well with it. There are a lot more resources now, and LLMs help imo What are your considerations with Rust vs the other options?
🙏 1
w
pretty much the one you brought up, performance, now we would like to do is unify our build systems so that it contains both native code and interpreter code, we've been using pants to generate python builds and it doesn't seem like stretch to have pants manage the rust code as well, such that a simple
pants package
builds all dependencies regardless of the language, I though maybe qiskit/ibm had something along those lines, that maybe we could leverage
w
FWIW, @gorgeous-winter-99296 has been working on a rust backend, and I think the upcoming workspace environments might also help unify those
👀 1
Also, quantum == awesome
😄 2
w
hey @wide-midnight-78598 yeah I remember looking at some gh issues several weeks back, I mean it would be great to have rust to be a supported backend. Also it seems like a great fit given that pants itself is python + rust (🐶 🥫ing for the win)
w
Agreed. There are workarounds, but first-party support would be great! And selfishly for me too, as I'm writing more rust nowadays 🙂