var := expr;
The assignment has the effect of assigning the value of the expressions expr to the variable var.
The variable var may be an ordinary variable (see Variables), a list
element selection list-var[int-expr] (see List Assignment) or a
Record Assignment). Since a list element or a record component may itself be a
list or a record the left hand side of an assignment may be arbitrarily
complex.
Note that variables do not have a type. Thus any value may be assigned to any variable. For example a variable with an integer value may be assigned a permutation or a list or anything else.
If the expression expr is a function call then this function must
return a value. If the function does not return a value an error is
signalled and you enter a break loop (see Break Loops). As usual you
can leave the break loop with quit;. If you enter return
return-expr; the value of the expression return-expr is assigned to
the variable, and execution continues after the assignment.
gap> S6 := rec( size := 720 );; S6;
rec(
size := 720 )
gap> S6.generators := [ (1,2), (1,2,3,4,5) ];; S6;
rec(
size := 720,
generators := [ (1,2), (1,2,3,4,5) ] )
gap> S6.generators[2] := (1,2,3,4,5,6);; S6;
rec(
size := 720,
generators := [ (1,2), (1,2,3,4,5,6) ] )
GAP 3.4.4