Cosa si intende per elaborazione di una dichiarazione?

2

Intuitivamente capisco "elaborazione" e ho un'idea molto blanda. Ma voglio sapere esattamente cosa è l'elaborazione di una dichiarazione?

Mi sono imbattuto in questa parola in questo contesto:

Stack dynamic storage bindings are created for variables when their declaration statements are elaborated.

La citazione proviene da "Concetti di linguaggi di programmazione" Robert Sebesta.

    
posta jsp99 23.03.2012 - 12:06
fonte

1 risposta

8

Dalla 9a edizione di Concepts of Programming Languages di Robert Sebesta:

Elaboration of a declaration refers to the storage allocation and binding process that takes place when the code containing the declaration is executed.

Ok, cosa significa?

Stack Le variabili dinamiche sono allocate allo stack. Hardware nel caso di codice nativo. Software nel caso di una macchina virtuale. Ciò significa che vengono messi in pila quando viene eseguito il codice che li contiene. Le variabili statiche d'altra parte sono legate e dati valori al momento del caricamento quando il programma inizia a funzionare.

In che modo è utile? Bene, generalmente le funzioni vengono inviate allo stack quando vengono eseguite insieme ai parametri passati. Oltre ad essere più veloce dell'heap, questo consente chiamate ricorsive.

Come nota storica, l'elaborazione come termine ha origine con Algol 68.

    
risposta data 23.03.2012 - 14:14
fonte

Leggi altre domande sui tag