> However, since everything is implicitly castable to a `void[]`, it 
becomes really easy to make a mistake in specifying what you want to write to the file.

Only other arrays are implicitly convertible to `void[]`, not literally everything.

> For the rare cases that the programmer really knows what they're doing and actually do want to write pointers to a file, they can cast to `void[]` first.

That's a good point, and I like the symmetry between reading and writing.