একটি গ্লোবাল ভেরিয়েবল পুনরায় বরাদ্দ করা যাবে না। এটি সর্বদা একই বস্তুর দিকে নির্দেশ করবে। যাইহোক, এর বিষয়বস্তু পরিবর্তিত হতে পারে, যদি মান পরিবর্তনযোগ্য হয় (উদাহরণস্বরূপ, একটি তালিকার বিষয়বস্তু)। স্থানীয় ভেরিয়েবলের এই সীমাবদ্ধতা নেই।
a = [1, 2]
a[1] = 3
b = 3
b = 4 # forbidden
ERROR: /path/ext.bzl:7:1: Variable b is read only
আপনি যদি একটি ফাংশন পুনরায় সংজ্ঞায়িত করার চেষ্টা করেন তবে আপনি একটি অনুরূপ ত্রুটি পাবেন (ফাংশন ওভারলোডিং সমর্থিত নয়), উদাহরণস্বরূপ:
def foo(x): return x + 1
def foo(x, y): return x + y # forbidden