From b5cededff4b543862ea800a8e68ad97b110183cc Mon Sep 17 00:00:00 2001 From: pimjager Date: Fri, 22 Apr 2016 11:55:14 +0200 Subject: [PATCH] ontwerpbesluiten aagepast --- ontwerpbesluiten.txt | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ontwerpbesluiten.txt b/ontwerpbesluiten.txt index 225ac74..b65b74a 100644 --- a/ontwerpbesluiten.txt +++ b/ontwerpbesluiten.txt @@ -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 -- 2.20.1