One issue with unsigned integers right off the bat is for loops. for(size_t i = a.length; i > 0; --i) {} is not going to work.
What's not working with this? Besides a neat idiom for reverse array indexing for (size_t i = a.length; i--; ) writeln(a[i]);