ontwerpbesluiten aagepast
authorpimjager <pim@pimjager.nl>
Fri, 22 Apr 2016 09:55:14 +0000 (11:55 +0200)
committerpimjager <pim@pimjager.nl>
Fri, 22 Apr 2016 09:55:14 +0000 (11:55 +0200)
ontwerpbesluiten.txt

index 225ac74..b65b74a 100644 (file)
@@ -15,4 +15,13 @@ praktisch onmogelijke met type inteference
 
 ---
 Functies kunnen voor correct typechecken alleen functies gebruiken die DAARNA 
-gedefinieerd zijn
\ No newline at end of file
+gedefinieerd zijn
+
+— 
+
+Globaal gedefinieerde dingen worden als constanten beschouwd. Enkel in functies gedefinieerde vars zijn mutable. Twee redenen: 1 we behouden onze programmeurs voor het gebruik van globale state, want dat is de wortel van het kwaad. Daarnaast past het goed bij dat _alles_ op top level een functie is. Als je zegt i = next x; en x wijzigt tussendoor en je checkt dan weer i dan wordt i opnieuw geevalueerd en dat levert dan dus een andere waarde op, en dat wil je niet.
+
+
+— mbt code generation
+—- 
+Bij callen is de callee verantwoordelijk voor het opslaan van de registers, indien nodig. Dit omdat _alles_ als function wordt gecalled, dus ook: i=4; b=i+1; levert een functiecall naar i op in de toewijzing van b. 
\ No newline at end of file