Ju mer jag arbetar med långa script ju mer förvånad blir jag över vad som händer när jag flyttar olika rader upp i scriptet för att undvika att minnesreferenserna blir för många. Det verkar nästan som en gissningslek om flyttningen går eller inte.
Vilka regler gäller för vilka argument som måste komma före eller efter andra?
ex.
kurva1:=xx
kurva2:=xxx
signal:=gt(kurva1,kurva2)
Måste ”signal” i ex komma efter kurva1 och kurva2 eller kan jag redan tidigare i scriptet (högre upp) använda ”signal”?
Logiskt sett måste man först ge ”signal” ett värde (högre upp) innan man kan använda det längre ner. Men det är möjligt att kompilatorn inte kräver att man skriver detta i ”logisk matematisk ordning”.
Ännu mer komplicerat blir det när man blandar in minnesref. Kan t.o.m. minnesreferenser förekomma i början av ett script som inte skapas (namnges) förrän längre ner, se exemplet?
ex.
delar:=and(del1,del2)
i30(
del1=xx
)
Det här börjar bli väldigt komplext så jag har svårt att ge konkreta exempel utan att skriva flera sidor med kod. Så första anhalten måste bli, vad säger regelboken om programmeringsordningen?
Vilka regler gäller för vilka argument som måste komma före eller efter andra?
ex.
kurva1:=xx
kurva2:=xxx
signal:=gt(kurva1,kurva2)
Måste ”signal” i ex komma efter kurva1 och kurva2 eller kan jag redan tidigare i scriptet (högre upp) använda ”signal”?
Logiskt sett måste man först ge ”signal” ett värde (högre upp) innan man kan använda det längre ner. Men det är möjligt att kompilatorn inte kräver att man skriver detta i ”logisk matematisk ordning”.
Ännu mer komplicerat blir det när man blandar in minnesref. Kan t.o.m. minnesreferenser förekomma i början av ett script som inte skapas (namnges) förrän längre ner, se exemplet?
ex.
delar:=and(del1,del2)
i30(
del1=xx
)
Det här börjar bli väldigt komplext så jag har svårt att ge konkreta exempel utan att skriva flera sidor med kod. Så första anhalten måste bli, vad säger regelboken om programmeringsordningen?
Comment