Μια lvalue είναι το αριστερό μέλος μιας ανάθεσης. Με άλλα λόγια, μια lvalue είναι αυτό που αναθέτετε σε κάτι. Έγκυρες lvalues είναι:
a
Αναγνωριστικό. Εδώ μπορεί να οριστεί η μεταβλητή του ονόματος a
.
*a
Αποαναφορά ενός αναγνωριστικού. Αυτό θα ορίσει οποιαδήποτε μεταβλητή δείχνει στο a
.
a@(<region>)
Μια περιοχή ενός πίνακα. Εδώ η περιοχή ορίζεται κανονικά όπως στην περίπτωση του κανονικού τελεστή @() και μπορεί να είναι μια μοναδική καταχώριση, ή μια πλήρης περιοχή του πίνακα.
Examples:
a:=4 *tmp := 89 a@(1,1) := 5 a@(4:8,3) := [1,2,3,4,5]'
Note that both :=
and =
can be used
interchangeably. Except if the assignment appears in a condition.
It is thus always safer to just use
:=
when you mean assignment, and ==
when you mean comparison.