Questo è un po 'di follow-up a this question.Perché la località viene determinata al momento della compilazione?
- Perché la località è determinata al momento della compilazione e non al momento dell'esecuzione? E 'puramente per le prestazioni?
- Ci sono linguaggi che cercano le loro variabili al momento dell'esecuzione? Cioè ogni volta che si accede a una variabile, questa variabile viene prima ricercata nell'ambito locale e quindi la ricerca viene sottoposta a escalation attraverso tutti gli ambiti che la racchiudono?
- Come gestiscono le lingue ECMA?
Per mettere domanda 2 in altre parole: Ci sono lingue in cui il codice seguente (nella sintassi necessaria) funziona:
def f(): print ('f')
def g():
f()
f = 42
g()
cosa dovrebbe fare il codice? –
Stampa 'f' senza generare' variabile locale non legata 'o qualcosa lungo questa linea. – Hyperboreus