Küresel değişkenler yeniden atanamaz. Her zaman aynı nesneyi gösterir. Ancak, değer değiştirilebilirse (ör. bir listenin içeriği) içeriği değişebilir. Yerel değişkenler bu kısıtlamaya tabi değildir.
a = [1, 2]
a[1] = 3
b = 3
b = 4 # forbidden
ERROR: /path/ext.bzl:7:1: Variable b is read only
Bir işlevi yeniden tanımlamaya çalışırsanız (işlev aşırı yükleme desteklenmez) benzer bir hata alırsınız. Örneğin:
def foo(x): return x + 1
def foo(x, y): return x + y # forbidden