My experience rewriting Enjarify in Rust
Robert Grosse

> For some reason, arrays of T: Clone are not cloneable. It’s ridiculous that I have to write code like this …

This is probably because Rust currently lacks “integer generics”, so it’s not possible to write something like “impl<T, N> Clone for [T, N]”. There are many places in the std library that hardcode several impls for specific array sizes (usually 0 through 32) but because that’s so tedious it hasn’t been done everywhere it could be.

Like the solutions to most of your pain points, I’m sure integer generics will get implemented *eventually*, but sadly it’s going to be a while.