summaryrefslogtreecommitdiff
path: root/prolog/problems/algol/algol_for_3/sl.py
diff options
context:
space:
mode:
authorAleksander Sadikov <aleksander.sadikov@fri.uni-lj.si>2016-05-29 19:04:26 +0200
committerAleksander Sadikov <aleksander.sadikov@fri.uni-lj.si>2016-05-29 19:04:26 +0200
commit7bc5d05a777045dbd5c9feace7c52c074b146794 (patch)
tree8cdddfe9e34b101b44a8966e18e2634ec18e0281 /prolog/problems/algol/algol_for_3/sl.py
parent8204263c09d77c2b4a8648aa9cad1bba97a9a5f5 (diff)
Denotational semantics, part #2 (mini algol): tests and translations added.
Diffstat (limited to 'prolog/problems/algol/algol_for_3/sl.py')
-rw-r--r--prolog/problems/algol/algol_for_3/sl.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/prolog/problems/algol/algol_for_3/sl.py b/prolog/problems/algol/algol_for_3/sl.py
new file mode 100644
index 0000000..17d91fc
--- /dev/null
+++ b/prolog/problems/algol/algol_for_3/sl.py
@@ -0,0 +1,18 @@
+name = 'algol_for/3'
+slug = 'interpreter za mini-algol s for stavkom'
+
+description = '''\
+<p>Razširi podano gramatiko za jezik mini-algol, da bo le-ta podprla uporabo stavka "for". Primer:</p>
+<pre>
+% for a := 0 & a < 5 & a := a + 1 do
+% begin
+% print(a)
+% end
+?- _Program = [begin,for,a,:=,0,&,a,<,5,&,a,:=,a+1,do,begin,print(a),end,end],
+ algol_for(_F, _Program, []),
+ apply([a=2], Output, _F).
+ Output = [a=5,printout=[0,1,2,3,4]].
+</pre>
+'''
+
+hint = {}