Images in every programming language feel like how people joke about strings in Rust, where there are 800 different types of image that represent different kinds of views and ownership statuses and compression and memory layout (and you get different types of image from network / file / GPU / screen / 2D draw calls and are constantly converting between them to get stuff done)
or trying to defer or cache or batch the conversion in smart ways that are extremely application-specific
:' )