A tuple is a mathematic definition. It is a finite ordered list of objects (not needing to be of the same type). Its notation is <item1, item2, ... ,itemn>.

Similar, but slightly different to a set, a tuple is an ordered group of elements which do not have to be of the same type. 2-tuples are often called a pair, and subsequent tuples of n elements are dubbed n-tuples. The formal definition of a finite automata is an example of tuples.

(computer science):
A tuple is what a mathematician would call a point in a (usually finite) cartesian product.

Say you have types T1, T2, ..., Tk. We view the types Ti as the sets of the objects of that type. Then the k-tuple type T = T1×...×Tk is the set of elements (a1,...,ak) with each ai coming from its respective Ti.

Here's a concrete example. (true, 17, 3.14159) is a tuple of type bool×int×float. Tuples are ordered, so (1,2) and (2,1) are distinct tuples of type int×int.

Tuples are somewhat akin to records (structs in C). But whereas every element of a record has a name, tuples don't distinguish their elements by name, but only by position.

Many functional programming languages offer tuples as composite types. Prolog's functors are a similar construct. I'm told that the parallel processing language Linda uses tuples extensively.

I have heard this word pronounced two different ways, and both equally common. In my experience, it seems that computer scientists like to pronounce it "TOO - pul", whereas mathematicians like to pronounce it "TUH - pul".

According to Webster, the former is correct.

TUPLE is also the name of a programming language/development environment, a parallel LISP based on KCL. It stands for "Toyohashi University Parallel Lisp Environment". (This last definition I discovered at Dictionary.com)

Log in or register to write something here or to contact authors.