Parallel Assignment
Some programming languages, such as JavaScript (since 1.7), Lua, occam 2, Perl, Python, REBOL, Ruby, and Windows PowerShell allow several variables to be assigned in parallel, with syntax like:
a,b := 0,1
which simultaneously assigns 0 to a
and 1 to b
. If the right-hand side of the assignment is an array variable, this feature is sometimes called sequence unpacking:
var list := {0, 1}
a,b := list
The list will be unpacked so that 0 is assigned to a
and 1 to b
. More interestingly,
a,b := b,a
Swaps the values of a
and b
. In languages without parallel assignment, this would have to be written to use a temporary variable
var t := a
a := b
b := t
since a:=b ; b:=a
leaves both a
and b
with the original value of b
.
Parallel assignment was introduced in CPL in 1963, under the name simultaneous assignment.
Read more about this topic: Assignment (computer Science)
Famous quotes containing the word parallel:
“There is a parallel between the twos and the tens. Tens are trying to test their abilities again, sizing up and experimenting to discover how to fit in. They dont mean everything they do and say. They are just testing. . . . Take a good deal of your daughters behavior with a grain of salt. Try to handle the really outrageous as matter-of-factly as you would a mistake in grammar or spelling.”
—Stella Chess (20th century)