Qual é a lógica dos métodos de tamanho de Swift usando `Int`s?

Percebi que muitos ins construídos e rápidos tomam ou retornamIntse nãoUInts:

Aqui estão alguns exemplos deArray:

mutating func reserveCapacity(minimumCapacity: Int)

var capacity: Int { get }

init(count: Int, repeatedValue: T)

mutating func removeAtIndex(index: Int) -> T

Dado que a linguagem é completamente nova, e assumindo que essa escolha de design não foi arbitrária - estou me perguntando:Por que os ins de construção rápidos levamIntse nãoUInts?

Algumas notas: Perguntando, porque eu mesmo estou trabalhando em algumas coleções e estou imaginando que tipos devo usar para coisas comoreserveCapacity etc. O que eu naturalmente esperaria é dereserveCapacity tirar umaUInt em vez de.