From e8db5760acd117d162945b0bb3b9a2b62845bf41 Mon Sep 17 00:00:00 2001 From: Marjolein Zwerver Date: Fri, 13 Jun 2014 17:05:35 +0200 Subject: [PATCH] aanpassingen syntaxt en clean code --- semantic_functions.icl | 8 ++------ semantic_functions.prp | 6 +++--- syntax.tex | 4 +++- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/semantic_functions.icl b/semantic_functions.icl index adf2ba2..331acb1 100644 --- a/semantic_functions.icl +++ b/semantic_functions.icl @@ -87,17 +87,13 @@ add_to_s :: a [a] -> [a] add_to_s a [] = [a] add_to_s a b = b ++ [a] -x = 5 -y = 1 -stack = [] - Start = vijffaculteit eenfaculteit = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2[1,1]))))))))))))))) tweefaculteit = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2 tweefaculteit1))))))))))))))) tweefaculteit1 = roll(e 1(e 2(d(roll(e 2(e 3(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2(d(roll(e 1(e 2(mul(roll(e 1(e 4(dup(roll(e 2(e 3(dup tweefaculteit2)))))))))))))))))))))))))))) -tweefaculteit2 = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2(e 1 (e 2 stack))))))))))))))))) +tweefaculteit2 = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2(e 1 (e 2 []))))))))))))))))) vijffaculteit = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2 vijffaculteit1))))))))))))))) vijffaculteit1 = roll(e 1(e 2(d(roll(e 2(e 3(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2(d(roll(e 1(e 2(mul(roll(e 1(e 4(dup(roll(e 2(e 3(dup vijffaculteit2)))))))))))))))))))))))))))) @@ -108,5 +104,5 @@ vijffaculteit5 = roll(e 1(e 2(d(roll(e 2(e 3(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e vijffaculteit6 = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2 vijffaculteit7))))))))))))))) vijffaculteit7 = roll(e 1(e 2(d(roll(e 2(e 3(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2(d(roll(e 1(e 2(mul(roll(e 1(e 4(dup(roll(e 2(e 3(dup [1,5])))))))))))))))))))))))))))) //[1,5] is the outcome of vijffaculteit8, but it won't run if not substituted -vijffaculteit8 = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2(e y (e x stack))))))))))))))))) +vijffaculteit8 = d(notc(gre(sub(e 1(e 1(notc(sub(e 1(roll(e 1(e 3(dup(roll(e 1(e 2(e 1 (e 5 []))))))))))))))))) diff --git a/semantic_functions.prp b/semantic_functions.prp index 601c728..01d6e53 100644 --- a/semantic_functions.prp +++ b/semantic_functions.prp @@ -11,9 +11,9 @@ MainModule DclOpen: False Icl WindowPosition - X: 10 - Y: 10 - SizeX: 800 + X: 590 + Y: 128 + SizeX: 798 SizeY: 640 IclOpen: True OtherModules diff --git a/syntax.tex b/syntax.tex index 8917a6b..0bc33dc 100644 --- a/syntax.tex +++ b/syntax.tex @@ -36,10 +36,12 @@ die gedeeltelijk beschreven is in tabel \ref{tab:sy1}. Om de notatie leesbaar en overzichtelijk te houden beschrijven we de syntax niet in de oorspronkelijke kleurennotatie maar gebruiken we een textuele notatie. Dan ziet de grammatica er als volgt uit:\\ -$S ::= S_1 ; S_2\ |\ push \ |\ pop\ |\ add\ |\ subtract\ +\\$S ::= S_1 ; S_2\ |\ push \: n\ |\ pop\ |\ add\ |\ subtract\ |\ multiply\ |\ divide\ |\mod\ |\\ not\ |\ greater\ |\ pointer\ |\ switch\ |\ duplicate\ |\ roll\ |\ innum\ |\ outnum$\\ +\\Waarbij $n \in \mathbb{N}_1$. $\mathbb{N}_1$ word ook wel gebruikt om de set $\mathbb{N}$ zonder 0 aan te geven. De parameter \textit{n} is hier toegevoegd omdat er anders in de tussentaal de grootte van het codel op het moment van de \textit{push} niet bekend is.\\ +De commando's in(char) en out(char) worden in tegenstelling tot in(number) en out(number) in dit werkstuk niet behandeld.\\ \subsection{Piet'} Omdat sommige simpele expressies in \textit{While} veel regels in beslag nemen -- 2.20.1