The second is data structures.
It's my belief that the number one reason why instantiating standard date objects is slow is because of the choice of data structure used to store it.