What are the differences between vectors, sets, and tuples in programming?
the difference is tuples are not meant to be treated as collections, while vectors & sets are.
tuples are meant to represent compound values, like position in a 3d space with (x,y,z) coordinates, it doesn't make sense to see it as a collection, because yes is a list of 3 numbers but the 3 numbers have different meaning and combined form an specific meaning.
Think of tuples as a structs with nameless positional attributes that can have different types. As such is not meant to store lots of values, and this is why all implementations of this things are optimized for a small number of them
an example of tuple is the type used to describe the columns of a single row in a SQL Database, in fact that is who rows are called in Relational Algebra.
A Vector (terrible name by the way) is an ordered collection that is meant to store lots of values it is usually implemented to grow as needed keeping an access of O(1)
a table in a SQL DB without primary key would be a Vector of tuples.
A Set is a collection of unique elements, that can be ordered but it doesn't have to be.
a table in a SQL DB with primary key would be Set of tuples.