they don't compile on spirv due to the inherent use of Options, but they'll be useful in the CPU-side code.
new_with_state
new