brentyi / jaxlie

Rigid transforms + Lie groups in JAX
MIT License
209 stars 15 forks source link

Long term support of jaxlie? #15

Open mjo22 opened 6 months ago

mjo22 commented 6 months ago

Hello! Me again. Again, this is a great library and thank you for responding to pull requests so promptly. I was wondering though its plans for long-term support, as I’m debating if I should keep this as a dependency in my library or write something home-cooked.

brentyi commented 6 months ago

Hi Michael, thanks again for the nice words!

There are no new features planned, but I'm planning to support jaxlie indefinitely. I'm also using both this JAX version and ports to PyTorch + NumPy[^1] on an almost daily basis, so if you run into any issues I'd of course be very interested. 🙂

That said, jaxlie is fairly lightweight and building something yourself could make sense if you want to reduce dependencies, make breaking API changes, or are just looking for an exercise. In terms of the API, there are certainly design details that I've gone back and forth on, like:

Overall I think the specific decisions we made for these things were correct given my personal priorities, but I can see other folks having different ones!

[^1]: the PyTorch version isn't public, but there's a NumPy port that we're depending on pretty heavily for some visualization tooling: https://viser.studio/transforms/

mjo22 commented 6 months ago

Thank you for answering this, this is all helpful to know.

As for feature requests, if we go forward with this as a dependency at some point I would consider a PR that allows for utilities for using different euler angle conventions. However, this is easy enough to do with the package as is.

Thanks again!

brentyi commented 6 months ago

Hi sorry for the late reply, this got buried by holiday things...

Yeah, I don't have plans to implement #7. This would be a breaking API change, the ergonomics of having several floating arrays now feels worse to me, and I don't think the hypothetical + likely small runtime benefits would be worth the effort.

If you have features you want I'm happy to review PRs! Euler angles are frowned upon in most of the circles I find myself in (because of singularities, the illusion of interpretability, too many ordering conventions, etc), but I do think incorporating more support for them makes sense for this package. 😛

mjo22 commented 6 months ago

Great, thanks for the update and no problem on the delay. The help is much appreciated!