Personally, I'm fine with just having infinitely recursive default implementations (Haskell did this until recently); I opened #7771 for a structured way to tell the compiler that certain things should be implemented.

I'm happy to leave `next_u32` undefined with a FIXME though.