Hey @jeromean
Thanks for sharing.
This work is very important but a bit orthogonal to the discussion above. In particular, the discussion above is for all backends. Were you do have to adapt “in core” to “in the main library” (when the main kernel lib is a separate package).
But I do think the same arguments apply for these, where that “main kernel lib” for a given backend should be careful not to grow uncontrollably.
But of course, we do want to continue to support and encourage out of tree backends and help them ship the best possible solution for our users.