Thanks for the explanation. Makes sense. Something else I noticed, vector notation does not specify a coordinate system. V = (1, 2) is just an array of two numbers. The cartesian coordinate interpretation is a choice we make. Correct?
Yes, the keyword here is 'basis'. You represent a vector by giving two pieces of data, (1) an ordered list of coordinates, and (2) a basis. The vector is then a linear combination of the basis elements, and the coordinates tell you how to form that linear combination.
For example, let's use the standard Cartesian basis consisting of unit vectors e1, e2, e3 (which point north, east, and up, informally speaking). If our vector v is given by the coordinates (3,4,8) (with respect to the standard basis), then this means that v = 3 * e1 + 4 * e2 + 8 * e3.
If the coordinates were given with respect to a different set of basis vectors, then you would take the linear combination using those vectors instead. Note the similarity of how a basis works to how a base system works representing numbers. Using base 10, the 'coordinates' of the number 348 mean that
348 = 3 * 100 + 4 * 10 + 8 * 1. Using a different base, say base 9, they would instead mean 348 = 3 * 81 + 4 * 9 + 8 * 1.
Aha, yes. Computer languages borrowed the word 'vector', but they have basically nothing to do with the mathematical structure from linear algebra. It's best to keep them completely separate in your mind.
If a coordinates are given, then they will be given with respect to a basis. However, it's entirely possible to do things more abstractly without introducing coordinates and bases to begin with, for example: