diff options
author | W-M-T | 2016-06-04 11:59:15 +0200 |
---|---|---|
committer | W-M-T | 2016-06-04 11:59:15 +0200 |
commit | a8c17733c076bf72d84535208906e493d1a21659 (patch) | |
tree | a430e55866ed6f20bb86794c79e1231a508c213c | |
parent | Noot over onafheid analyse toegevoegd (diff) |
Some feedback processing
-rw-r--r-- | analyse.tex | 2 | ||||
-rw-r--r-- | defio.tex | 2 | ||||
-rw-r--r-- | defstate.tex | 2 | ||||
-rw-r--r-- | intro.tex | 2 | ||||
-rw-r--r-- | introcoms.tex | 5 | ||||
-rw-r--r-- | rulesoutput.tex | 4 | ||||
-rw-r--r-- | sosexamp.tex | 2 |
7 files changed, 9 insertions, 10 deletions
diff --git a/analyse.tex b/analyse.tex index a441f80..4d4a48d 100644 --- a/analyse.tex +++ b/analyse.tex @@ -84,7 +84,7 @@ oftewel: er is een afleidingsboom voor $$ \trans {Programma}{[s:\Nil]}{(\Nil,\emptystore)} - {\Nil}{s^R}{\st} + {\Nil}{[s^R:\Nil]}{\st} $$ voor alle s, waar $$(c~s)^R=s^R c$$ @@ -3,7 +3,7 @@ \label{sec:def:io} Allereerst definiƫren we het type $\Stack{a}$, omdat stacks we veel met stacks -doen in onze semantiek regels. Een $\Stack{a}$ (lees: een stack van elementen +doen in onze semantiekregels. Een $\Stack{a}$ (lees: een stack van elementen van type $a$) is een simpel datatype met de volgende syntax: \def\inbrackets#1{$\mathrm{[}#1\mathrm{]}$} diff --git a/defstate.tex b/defstate.tex index b748c98..78da137 100644 --- a/defstate.tex +++ b/defstate.tex @@ -17,7 +17,7 @@ $\lambda$ in overeenstemming met de documentatie \cite{safalra}: \end{quote} Een toewijzing van $\val$ aan $\var$ noteren we als $\var\mapsto\val$. Een -store is een verzameling zulke toewijzingen, zodat we bijvoorbeeld +store noteren we als een verzameling van zulke toewijzingen, zodat we bijvoorbeeld $\{\texttt{x}\mapsto\texttt{hello world}\}$ noteren voor de store die \texttt{x} naar ``hello world'' stuurt. We laten de strings die naar $\lambda$ sturen normaal gesproken weg. De initiƫle store schrijven we dus als @@ -56,7 +56,7 @@ illustreren met een voorbeeld: leeg. Vervolgens zetten we `papa' op de stack en gebruiken we \smurfinline{g} om het bovenste element als variabele op te zoeken in de variable store en de waarde ervan op de stack te zetten. Hierbij wordt het bovenste element van de - stack verwijdert. De stack bestaat nu dus uit het element `smurf'. Met + stack verwijderd. De stack bestaat nu dus uit het element `smurf'. Met \smurfinline{o} sturen we deze string naar de output. \end{exmp} diff --git a/introcoms.tex b/introcoms.tex index a34e0a6..7ac091a 100644 --- a/introcoms.tex +++ b/introcoms.tex @@ -26,13 +26,12 @@ bespreken. Alle commando's betekenen nog steeds hetzelfde. \item[\smurfinline{o} of $\StmOutput$] Stuurt het bovenste element van de stack naar `de output'. \item[\smurfinline{p} of $\StmPut$] - Hierbij word ervoor gezorgd dat de waarde van de variablenaam bovenop de + Hierbij wordt ervoor gezorgd dat de waarde van de variablenaam bovenop de stack verwijst naar de string die daaronder staat. \item[\smurfinline{g} of $\StmGet$] Zoekt de variabele op met als naam de bovenste waarde van de stack en zet de waarde van die variabele bovenop de stack. \item[\smurfinline{h} of $\StmHead$] - Zet het eerste karakter van de string bovenop de stack op de - stack. + Vervang de string bovenop de stack door zijn eerste karakter. \item[\smurfinline{t} of $\StmTail$] Zet alles behalve de head van de string bovenop de stack op de stack. \item[\smurfinline{q} of $\StmQuotify$] diff --git a/rulesoutput.tex b/rulesoutput.tex index c6a1f66..d4bb487 100644 --- a/rulesoutput.tex +++ b/rulesoutput.tex @@ -19,7 +19,7 @@ $$ \justifies \trans {\StmOutput:\pgm}{\ip}{(\stk,\str)} - {\ip'}{[\op:[s:\Nil]]}{\st} + {\ip'}{\push{s}{\op}}{\st} \using{\routputns} \qquad \text{met $\pop{\stk} = (s,\stk') $,} @@ -27,7 +27,7 @@ $$ $$ waarbij $\op$ in de bovenste regel de gehele outputstack weergeeft. Merk op -dat eenzelfde regel waar $s$ niet achteraan maar vooraan zou komen te staan, +dat eenzelfde regel waar $s$ niet voor op de stack wordt gezet maar achter, even geldig is. Geen van beide opties is beter dan de ander omdat we geen aannames doen over hoe de $\Output$-stack wordt verwerkt. diff --git a/sosexamp.tex b/sosexamp.tex index cb2cbb2..09271a1 100644 --- a/sosexamp.tex +++ b/sosexamp.tex @@ -10,7 +10,7 @@ zijn. Wij hadden een voorkeur om natuurlijke semantiek te gebruiken omdat we hier meer bekend mee zijn. Echter willen we ook nog graag laten zien hoe het eruit zou zien als je structurele operationele semantiek zou gebruiken. -We gebruiken hier in plaats van de labdaregel twee compositieregels om hiervan +We gebruiken hier in plaats van de lambdaregel twee compositieregels om hiervan ook het verschil aan te geven. De twee compositieregels zijn als volgt: |