Safety is usually not a design goal for low level APIs. You rather want it to be minimal, functions to be orthogonal, clean abstractions and only promise necessary semantics.
And this might be already the reason. Win32 is geared towards the broad range of developers whereas Unix comes more from systems thinking.
And this might be already the reason. Win32 is geared towards the broad range of developers whereas Unix comes more from systems thinking.