I can't think of any reasons for users to initialize CoordinateSym instances. They will always be accessed through the frame instances. As it is, having one instance of a variable for a (frame, index) pair is the best option (similar to Vector)