summaryrefslogtreecommitdiff
path: root/assignment-5
diff options
context:
space:
mode:
authorCamil Staps2017-10-13 13:40:37 +0200
committerCamil Staps2017-10-13 13:40:37 +0200
commit349bf4a7d5227d12747c98e5651478b20574c338 (patch)
tree4a4c5fb32c88b94a2337b5750958bb5ac8bded27 /assignment-5
parentAssignment 5 (diff)
Better Start rule skeleton5
Diffstat (limited to 'assignment-5')
-rw-r--r--assignment-5/skeleton5.icl17
1 files changed, 16 insertions, 1 deletions
diff --git a/assignment-5/skeleton5.icl b/assignment-5/skeleton5.icl
index fd9720d..3f3ba2f 100644
--- a/assignment-5/skeleton5.icl
+++ b/assignment-5/skeleton5.icl
@@ -1,6 +1,7 @@
module skeleton5
import iTasks
+import Data.Functor
/*
* Pieter Koopman, pieter@cs.ru.nl
@@ -22,7 +23,21 @@ import iTasks
derive class iTask Student, BaMa
-Start w = startEngine (task8 (hd students)) w
+//Start w = startEngine (task8 (hd students)) w
+Start w = startEngine (chooseTask >>= id) w
+
+chooseTask :: Task (Task ())
+chooseTask = snd <$> enterChoice (Title "What do you want to see?")
+ [ChooseFromDropdown fst]
+ [ ("Enter a new student", () <$ task1)
+ , ("Enter a list of students", () <$ task2)
+ , ("Update the first student", () <$ task3 (hd students))
+ , ("Pick a favourite student", () <$ task4)
+ , ("Pick a student (name only)", () <$ task5)
+ , ("Pick a student (gToString)", () <$ task6)
+ , ("Pick partners", () <$ task7)
+ , ("Change the first student's name", () <$ task8 (hd students))
+ ]
task1 :: Task Student
task1 = enterInformation (Title "Enter a student") []