aanpassingen syntaxt en clean code
authorMarjolein Zwerver <marjolein_zwerver@hotmail.com>
Fri, 13 Jun 2014 15:05:35 +0000 (17:05 +0200)
committerMarjolein Zwerver <marjolein_zwerver@hotmail.com>
Fri, 13 Jun 2014 15:05:35 +0000 (17:05 +0200)
semantic_functions.icl
semantic_functions.prp
syntax.tex

index adf2ba2..331acb1 100644 (file)
@@ -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 [])))))))))))))))))
 
index 601c728..01d6e53 100644 (file)
@@ -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
index 8917a6b..0bc33dc 100644 (file)
@@ -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