> The first parameter of nimCopyMem can't be const obviously. Sure it can, the pointer is const, what it points to is not. It's `const T* const` vs `const T*`. And it's exactly this sophistry that implies that in practice "const" is useless: It's never applied consistently and if it were it would be overly verbose and it can be casted away so the C optimizer is better off not relying on it and computing the property on the fly...
It's also against C's spirit, you don't use types to enforce correctness, you use them to describe memory layouts, layouts don't have "readonly" properties. Correctness in C-land is approximated by testing.
