From a7d7542dc646a5fd124ef71e71ce260889f1701b Mon Sep 17 00:00:00 2001 From: Camil Staps Date: Tue, 2 Feb 2016 19:24:50 +0100 Subject: Moved to 1415 directory --- fp2/week1/camil/Galgje.icl | 58 - fp2/week1/camil/Random.dcl | 19 - fp2/week1/camil/Random.icl | 20 - fp2/week1/camil/SimpleFileIO.dcl | 14 - fp2/week1/camil/SimpleFileIO.icl | 39 - fp2/week1/camil/StdMaybe.dcl | 41 - fp2/week1/camil/StdMaybe.icl | 65 - fp2/week1/camil/lexicon.txt | 18 - fp2/week1/camil/round-0.txt | 7 - fp2/week1/camil/round-1.txt | 7 - fp2/week1/camil/round-2.txt | 7 - fp2/week1/camil/round-3.txt | 7 - fp2/week1/camil/round-4.txt | 7 - fp2/week1/camil/round-5.txt | 7 - fp2/week1/camil/round-lost.txt | 7 - fp2/week1/camil/week1.tar.gz | Bin 3450 -> 0 bytes fp2/week1/mart/Echo | Bin 103744 -> 0 bytes fp2/week1/mart/Echo.icl | 11 - fp2/week1/mart/Galgje | Bin 103512 -> 0 bytes fp2/week1/mart/Galgje.icl | 13 - fp2/week1/mart/GalgjeWF.dcl | 5 - fp2/week1/mart/Random.dcl | 19 - fp2/week1/mart/Random.icl | 20 - fp2/week1/mart/RandomGetallen | Bin 105976 -> 0 bytes fp2/week1/mart/RandomGetallen.dcl | 7 - fp2/week1/mart/RandomGetallen.icl | 33 - fp2/week1/mart/SimpleFileIO.dcl | 14 - fp2/week1/mart/SimpleFileIO.icl | 39 - fp2/week2/camil/StdIOMonad.dcl | 40 - fp2/week2/camil/StdIOMonad.icl | 130 -- fp2/week2/camil/StdMaybe.dcl | 41 - fp2/week2/camil/StdMaybe.icl | 65 - fp2/week2/camil/StdMonad.dcl | 8 - fp2/week2/camil/StdMonad.icl | 1 - fp2/week2/camil/Test.dcl | 1 - fp2/week2/camil/Test.icl | 12 - fp2/week2/mart/StdIOMonad.dcl | 40 - fp2/week2/mart/StdIOMonad.icl | 138 -- fp2/week2/mart/StdMonad.dcl | 8 - fp2/week2/mart/StdMonad.icl | 1 - fp2/week2/mart/Test.dcl | 1 - fp2/week2/mart/Test.icl | 13 - fp2/week2/mart/camil.txt | 2 - fp2/week2/mart/s4109503_s4498062_fp2_w2.tar.gz | Bin 2207 -> 0 bytes fp2/week3/camil/StdDynSet.dcl | 24 - fp2/week3/camil/StdDynSet.icl | 62 - fp2/week3/camil/StdDynSet.prj | 569 --------- fp2/week3/camil/StdDynSet.prp | 217 ---- fp2/week3/mart/GetallenRaden.icl | 52 - fp2/week3/mart/GetallenRaden.prj | 1594 ------------------------ fp2/week3/mart/GetallenRaden.prp | 543 -------- fp2/week3/mart/NotatieDynamics.icl | 25 - fp2/week3/mart/StdDynSet.dcl | 24 - fp2/week3/mart/StdDynSet.icl | 54 - fp2/week3/mart/StdDynSet.prj | 569 --------- fp2/week3/mart/StdDynSet.prp | 193 --- fp2/week3/mart/fib.dyn | 1 - fp2/week3/week3.tar.gz | Bin 1717 -> 0 bytes fp2/week45/camil/RefactorX.dcl | 18 - fp2/week45/camil/RefactorX.icl | 82 -- fp2/week45/mart/RefactorX.dcl | 17 - fp2/week45/mart/RefactorX.icl | 72 -- fp2/week45/week45.tar.gz | Bin 1091 -> 0 bytes fp2/week6/camil/BinSearchTree.dcl | 8 - fp2/week6/camil/BinSearchTree.icl | 49 - fp2/week6/camil/BinSearchTreeImage.icl | 75 -- fp2/week6/camil/BinTree.dcl | 16 - fp2/week6/camil/BinTree.icl | 38 - fp2/week6/mart/BinSearchTree.dcl | 8 - fp2/week6/mart/BinSearchTree.icl | 49 - fp2/week6/mart/BinSearchTreeImage.icl | 71 -- fp2/week6/mart/BinTree.dcl | 16 - fp2/week6/mart/BinTree.icl | 38 - 73 files changed, 5469 deletions(-) delete mode 100644 fp2/week1/camil/Galgje.icl delete mode 100644 fp2/week1/camil/Random.dcl delete mode 100644 fp2/week1/camil/Random.icl delete mode 100644 fp2/week1/camil/SimpleFileIO.dcl delete mode 100644 fp2/week1/camil/SimpleFileIO.icl delete mode 100644 fp2/week1/camil/StdMaybe.dcl delete mode 100644 fp2/week1/camil/StdMaybe.icl delete mode 100644 fp2/week1/camil/lexicon.txt delete mode 100644 fp2/week1/camil/round-0.txt delete mode 100644 fp2/week1/camil/round-1.txt delete mode 100644 fp2/week1/camil/round-2.txt delete mode 100644 fp2/week1/camil/round-3.txt delete mode 100644 fp2/week1/camil/round-4.txt delete mode 100644 fp2/week1/camil/round-5.txt delete mode 100644 fp2/week1/camil/round-lost.txt delete mode 100644 fp2/week1/camil/week1.tar.gz delete mode 100755 fp2/week1/mart/Echo delete mode 100644 fp2/week1/mart/Echo.icl delete mode 100755 fp2/week1/mart/Galgje delete mode 100644 fp2/week1/mart/Galgje.icl delete mode 100644 fp2/week1/mart/GalgjeWF.dcl delete mode 100644 fp2/week1/mart/Random.dcl delete mode 100644 fp2/week1/mart/Random.icl delete mode 100755 fp2/week1/mart/RandomGetallen delete mode 100644 fp2/week1/mart/RandomGetallen.dcl delete mode 100644 fp2/week1/mart/RandomGetallen.icl delete mode 100644 fp2/week1/mart/SimpleFileIO.dcl delete mode 100644 fp2/week1/mart/SimpleFileIO.icl delete mode 100644 fp2/week2/camil/StdIOMonad.dcl delete mode 100644 fp2/week2/camil/StdIOMonad.icl delete mode 100644 fp2/week2/camil/StdMaybe.dcl delete mode 100644 fp2/week2/camil/StdMaybe.icl delete mode 100644 fp2/week2/camil/StdMonad.dcl delete mode 100644 fp2/week2/camil/StdMonad.icl delete mode 100644 fp2/week2/camil/Test.dcl delete mode 100644 fp2/week2/camil/Test.icl delete mode 100644 fp2/week2/mart/StdIOMonad.dcl delete mode 100644 fp2/week2/mart/StdIOMonad.icl delete mode 100644 fp2/week2/mart/StdMonad.dcl delete mode 100644 fp2/week2/mart/StdMonad.icl delete mode 100644 fp2/week2/mart/Test.dcl delete mode 100644 fp2/week2/mart/Test.icl delete mode 100644 fp2/week2/mart/camil.txt delete mode 100644 fp2/week2/mart/s4109503_s4498062_fp2_w2.tar.gz delete mode 100644 fp2/week3/camil/StdDynSet.dcl delete mode 100644 fp2/week3/camil/StdDynSet.icl delete mode 100644 fp2/week3/camil/StdDynSet.prj delete mode 100644 fp2/week3/camil/StdDynSet.prp delete mode 100644 fp2/week3/mart/GetallenRaden.icl delete mode 100644 fp2/week3/mart/GetallenRaden.prj delete mode 100644 fp2/week3/mart/GetallenRaden.prp delete mode 100644 fp2/week3/mart/NotatieDynamics.icl delete mode 100644 fp2/week3/mart/StdDynSet.dcl delete mode 100644 fp2/week3/mart/StdDynSet.icl delete mode 100644 fp2/week3/mart/StdDynSet.prj delete mode 100644 fp2/week3/mart/StdDynSet.prp delete mode 100644 fp2/week3/mart/fib.dyn delete mode 100644 fp2/week3/week3.tar.gz delete mode 100644 fp2/week45/camil/RefactorX.dcl delete mode 100644 fp2/week45/camil/RefactorX.icl delete mode 100644 fp2/week45/mart/RefactorX.dcl delete mode 100644 fp2/week45/mart/RefactorX.icl delete mode 100644 fp2/week45/week45.tar.gz delete mode 100644 fp2/week6/camil/BinSearchTree.dcl delete mode 100644 fp2/week6/camil/BinSearchTree.icl delete mode 100644 fp2/week6/camil/BinSearchTreeImage.icl delete mode 100644 fp2/week6/camil/BinTree.dcl delete mode 100644 fp2/week6/camil/BinTree.icl delete mode 100755 fp2/week6/mart/BinSearchTree.dcl delete mode 100755 fp2/week6/mart/BinSearchTree.icl delete mode 100755 fp2/week6/mart/BinSearchTreeImage.icl delete mode 100755 fp2/week6/mart/BinTree.dcl delete mode 100755 fp2/week6/mart/BinTree.icl (limited to 'fp2') diff --git a/fp2/week1/camil/Galgje.icl b/fp2/week1/camil/Galgje.icl deleted file mode 100644 index 75b09d0..0000000 --- a/fp2/week1/camil/Galgje.icl +++ /dev/null @@ -1,58 +0,0 @@ -// Mart Lubbers s4109503, Camil Staps s4498062 - -module Galgje - -import StdEnv, SimpleFileIO, RandomGetallen - -lexicon_file = "lexicon.txt" - -// Is a Char a member of a String -isMemberString :: String Char -> Bool -isMemberString "" c = False -isMemberString s c = s.[0] == c || isMemberString (s % (1,size s - 1)) c - -// From the slides -skip_nl :: String -> String -skip_nl str = if (size str > 0 && str.[size str-1] == '\n') (str%(0,size str-2)) str - -// From a String and a List of guesses (Chars), return a String that shows dots for letters that were not guessed yet -stripUnknown :: String [Char] -> String -stripUnknown s g = toString [if (isMember c g) c '.' \\ c <- (fromString s)] - -// Get a random word from the lexicon file -randomWord :: *env -> (Maybe String, *env) | FileSystem env -randomWord env -# (ss,env) = readLines lexicon_file env -| ss == Nothing = (Nothing, env) -# (seed,env) = getNewRandomSeed env -| otherwise = (Just (skip_nl ((shuffle (fromJust ss) seed)!!0)), env) - -// word, guesses, mistakes left, stdio -> (win, new guesses, stdio) -play :: String [Char] Int *File *env -> (Bool, [Char], *File, *env) | FileSystem env -play w g n io world -# io = io <<< stripUnknown w g <<< '\n' -| stripUnknown w g == w = (True, g, io, world) -# (round,world) = readFile ("round-" +++ (toString n) +++ ".txt") world -| round == Nothing = abort "Couldn't get gallow" -# io = io <<< (fromJust round) -# io = io <<< "Guess (" <<< toString n <<< "): " -# (ok,g`,io) = freadc io -# (_,io) = freadline io // to read until the next \n -| not ok = abort "Couldn't get guessed letter" -| isMemberString w g` = play w [g`:g] n io world -| n == 0 = (False, [g`:g], io, world) -| otherwise = play w [g`:g] (n-1) io world - -Start :: *World -> *World -Start world -# (word,world) = randomWord world -| word == Nothing = abort "Couldn't get random word" -# word = fromJust word -# (io,world) = stdio world -# (win,g,io,world) = play word [] 5 io world -# (lost,world) = readFile "round-lost.txt" world -| lost == Nothing = abort "Couldn't get gallow" -# io = if win (io <<< "You win!\n") (io <<< "You lose!\n" <<< fromJust lost) -# (ok,world) = fclose io world -| not ok = abort "Couldn't close stdio" -| otherwise = world diff --git a/fp2/week1/camil/Random.dcl b/fp2/week1/camil/Random.dcl deleted file mode 100644 index 47a7c18..0000000 --- a/fp2/week1/camil/Random.dcl +++ /dev/null @@ -1,19 +0,0 @@ -definition module Random - - // Random number generator voor Linux gebruikers - // interface compatible met Random.dcl (helaas) - // -- mschool@science.ru.nl - -import StdFile - -:: RandomSeed - -// nullRandomSeed generates a fixed RandomSeed -nullRandomSeed :: RandomSeed - -// GetNewRandomSeed generates a good RandomSeed, using /dev/urandom -getNewRandomSeed :: !*env -> (!RandomSeed, !*env) | FileSystem env - -// Given a RandomSeed, Random generates a random number and a new RandomSeed. -random :: !RandomSeed -> .(!Int, !RandomSeed) - diff --git a/fp2/week1/camil/Random.icl b/fp2/week1/camil/Random.icl deleted file mode 100644 index b6e0768..0000000 --- a/fp2/week1/camil/Random.icl +++ /dev/null @@ -1,20 +0,0 @@ -implementation module Random - -import StdFile, StdList, StdMisc, StdArray, Random - -:: RandomSeed :== Int - -nullRandomSeed :: RandomSeed -nullRandomSeed = 0 - -getNewRandomSeed :: !*env -> (!RandomSeed, !*env) | FileSystem env -getNewRandomSeed env -# (ok, src, env) = sfopen "/dev/urandom" FReadData env -| not ok => abort "could not open /dev/urandom" -# (bytes, src) = sfreads src 4 - seed = foldl (\x y->(x<<8)+toInt y) 0 [c \\ c<-:bytes] -| otherwise => (seed, env) - -random :: !RandomSeed -> .(!Int, !RandomSeed) -random seed = (seed>>16 bitand 0xFFFF, seed*0x08088405+1) - diff --git a/fp2/week1/camil/SimpleFileIO.dcl b/fp2/week1/camil/SimpleFileIO.dcl deleted file mode 100644 index 1bd97da..0000000 --- a/fp2/week1/camil/SimpleFileIO.dcl +++ /dev/null @@ -1,14 +0,0 @@ -definition module SimpleFileIO - -import StdFile, StdOverloaded, StdMaybe - -// 1. -readFile :: String *env -> (Maybe String, *env) | FileSystem env -writeFile :: String String *env -> (Bool, *env) | FileSystem env - -// 2. -readLines :: String *env -> (Maybe [String],*env) | FileSystem env -writeLines :: String [String] *env -> (Bool, *env) | FileSystem env - -// 3. -//mapFile :: String String (a -> b) *env -> (Bool, *env) | FileSystem env & ... a & ... b diff --git a/fp2/week1/camil/SimpleFileIO.icl b/fp2/week1/camil/SimpleFileIO.icl deleted file mode 100644 index b2a483a..0000000 --- a/fp2/week1/camil/SimpleFileIO.icl +++ /dev/null @@ -1,39 +0,0 @@ -implementation module SimpleFileIO - -import StdEnv, StdFile, StdOverloaded, StdMaybe - -// 1. -readFile :: String *env -> (Maybe String, *env) | FileSystem env -readFile s env -# (ss, env) = readLines s env -| ss == Nothing = (Nothing, env) -| otherwise = (Just (foldl (+++) "" (fromJust ss)), env) - -writeFile :: String String *env -> (Bool, *env) | FileSystem env -writeFile fn s env -# (ok, outfile, env) = fopen fn FWriteText env -| not ok = (False, env) -# outfile = fwrites s outfile -# (ok, env) = fclose outfile env -| otherwise = (ok, env) - -// 2. -readLines :: String *env -> (Maybe [String],*env) | FileSystem env -readLines s env -# (ok, infile, env) = sfopen s FReadText env -| not ok = (Nothing, env) -| otherwise = (Just (fst (readLines` infile)), env) -where - readLines` :: File -> ([String], File) - readLines` file - | sfend file = ([], file) - # (line, file) = sfreadline file - # (ss, file) = readLines` file - | otherwise = ([line : ss], file) - -writeLines :: String [String] *env -> (Bool, *env) | FileSystem env -writeLines fn ss env = writeFile fn (foldl (+++) "" [s +++ "\n" \\ s <- ss]) env - -// 3. -//mapFile :: String String (a -> b) *env -> (Bool, *env) | FileSystem env & ... a & ... b - diff --git a/fp2/week1/camil/StdMaybe.dcl b/fp2/week1/camil/StdMaybe.dcl deleted file mode 100644 index 2403683..0000000 --- a/fp2/week1/camil/StdMaybe.dcl +++ /dev/null @@ -1,41 +0,0 @@ -definition module StdMaybe - -// ******************************************************************************** -// Clean StdLib library module, version 1.0 -// ******************************************************************************** - -from StdFunc import :: St; -from StdOverloaded import class ==(..); - -:: Maybe x - = Just x - | Nothing - -isJust :: !(Maybe .x) -> Bool // case @1 of (Just _) -> True; _ -> False -isNothing :: !(Maybe .x) -> Bool // not o isJust -fromJust :: !(Maybe .x) -> .x // \(Just x) -> x - -// for possibly unique elements: -u_isJust :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) -u_isNothing :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) - -accMaybe :: .(St .x .a) !u:(Maybe .x) -> (!Maybe .a,!u:Maybe .x) -// accMaybe f (Just x) = (Just (fst (f x)),Just (snd (f x))) -// accMaybe f Nothing = (Nothing,Nothing) - -mapMaybe :: .(.x -> .y) !(Maybe .x) -> Maybe .y -// mapMaybe f (Just x) = Just (f x) -// mapMaybe f Nothing = Nothing - -instance == (Maybe x) | == x -// Nothing==Nothing -// Just a ==Just b <= a==b - -maybeToList :: !(Maybe .a) -> [.a]; -// returns list with no or one element - -listToMaybe :: ![.a] -> .Maybe .a; -// returns Just head of list if possible - -catMaybes :: ![Maybe .a] -> .[.a]; -// catMaybes ms = [ m \\ Just m <- ms ] diff --git a/fp2/week1/camil/StdMaybe.icl b/fp2/week1/camil/StdMaybe.icl deleted file mode 100644 index 4eed325..0000000 --- a/fp2/week1/camil/StdMaybe.icl +++ /dev/null @@ -1,65 +0,0 @@ -implementation module StdMaybe - -// ******************************************************************************** -// Clean StdLib library module, version 1.0 -// ******************************************************************************** - -from StdFunc import :: St; -from StdOverloaded import class ==(..); - -:: Maybe x - = Just x - | Nothing - -isJust :: !(Maybe .x) -> Bool -isJust Nothing = False -isJust _ = True - -isNothing :: !(Maybe .x) -> Bool -isNothing Nothing = True -isNothing _ = False - -u_isJust :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) -u_isJust nothing=:Nothing - = (False, nothing) -u_isJust just - = (True, just) - -u_isNothing :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) -u_isNothing nothing=:Nothing - = (True, nothing) -u_isNothing just - = (False,just) - -fromJust :: !(Maybe .x) -> .x -fromJust (Just x) = x - -accMaybe :: .(St .x .a) !u:(Maybe .x) -> (!Maybe .a,!u:Maybe .x) -accMaybe f (Just x) - # (a,x) = f x - = (Just a,Just x) -accMaybe _ nothing - = (Nothing,nothing) - -mapMaybe :: .(.x -> .y) !(Maybe .x) -> Maybe .y -mapMaybe f (Just x) = Just (f x) -mapMaybe _ nothing = Nothing - -instance == (Maybe x) | == x where - (==) Nothing maybe = case maybe of - Nothing -> True - just -> False - (==) (Just a) maybe = case maybe of - Just b -> a==b - nothing -> False - -maybeToList :: !(Maybe .a) -> [.a]; -maybeToList Nothing = [] -maybeToList (Just a) = [a] - -listToMaybe :: ![.a] -> .Maybe .a; -listToMaybe [] = Nothing -listToMaybe [a:_] = Just a - -catMaybes :: ![Maybe .a] -> .[.a]; -catMaybes ms = [ m \\ Just m <- ms ] diff --git a/fp2/week1/camil/lexicon.txt b/fp2/week1/camil/lexicon.txt deleted file mode 100644 index 9c2ad4e..0000000 --- a/fp2/week1/camil/lexicon.txt +++ /dev/null @@ -1,18 +0,0 @@ -armada -balinese -bergens -cyprus -europeanen -guldensporenslag -hollandermop -jordaans -lagerhuis -luiker -mensenzoon -opperwezen -randstad -samaritaan -sovjettijd -thailand -vietnamese -zeeuws diff --git a/fp2/week1/camil/round-0.txt b/fp2/week1/camil/round-0.txt deleted file mode 100644 index 7236e17..0000000 --- a/fp2/week1/camil/round-0.txt +++ /dev/null @@ -1,7 +0,0 @@ - ------ - | \ | - o \| - /O\ | - | - | -________ diff --git a/fp2/week1/camil/round-1.txt b/fp2/week1/camil/round-1.txt deleted file mode 100644 index 8694aad..0000000 --- a/fp2/week1/camil/round-1.txt +++ /dev/null @@ -1,7 +0,0 @@ - ------ - | \ | - o \| - | - | - | -________ diff --git a/fp2/week1/camil/round-2.txt b/fp2/week1/camil/round-2.txt deleted file mode 100644 index d46d77c..0000000 --- a/fp2/week1/camil/round-2.txt +++ /dev/null @@ -1,7 +0,0 @@ - ------ - | \ | - \| - | - | - | -________ diff --git a/fp2/week1/camil/round-3.txt b/fp2/week1/camil/round-3.txt deleted file mode 100644 index 9bdd2ba..0000000 --- a/fp2/week1/camil/round-3.txt +++ /dev/null @@ -1,7 +0,0 @@ - ------ - \ | - \| - | - | - | -________ diff --git a/fp2/week1/camil/round-4.txt b/fp2/week1/camil/round-4.txt deleted file mode 100644 index 41ca216..0000000 --- a/fp2/week1/camil/round-4.txt +++ /dev/null @@ -1,7 +0,0 @@ - - | - | - | - | - | -________ diff --git a/fp2/week1/camil/round-5.txt b/fp2/week1/camil/round-5.txt deleted file mode 100644 index f29c0dd..0000000 --- a/fp2/week1/camil/round-5.txt +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - -________ diff --git a/fp2/week1/camil/round-lost.txt b/fp2/week1/camil/round-lost.txt deleted file mode 100644 index 7ec2fa7..0000000 --- a/fp2/week1/camil/round-lost.txt +++ /dev/null @@ -1,7 +0,0 @@ - ------ - | \ | - o \| - /O\ | - / \ | - | -________ diff --git a/fp2/week1/camil/week1.tar.gz b/fp2/week1/camil/week1.tar.gz deleted file mode 100644 index 3533265..0000000 Binary files a/fp2/week1/camil/week1.tar.gz and /dev/null differ diff --git a/fp2/week1/mart/Echo b/fp2/week1/mart/Echo deleted file mode 100755 index cf2fb79..0000000 Binary files a/fp2/week1/mart/Echo and /dev/null differ diff --git a/fp2/week1/mart/Echo.icl b/fp2/week1/mart/Echo.icl deleted file mode 100644 index 30a6f4b..0000000 --- a/fp2/week1/mart/Echo.icl +++ /dev/null @@ -1,11 +0,0 @@ -module Echo - -import StdEnv - - -Start :: *World -> *World -Start world -# (console, world) = stdio world -# (line, console) = freadline console -| not (fend console) = fwrites line -| otherwise = world diff --git a/fp2/week1/mart/Galgje b/fp2/week1/mart/Galgje deleted file mode 100755 index d46de77..0000000 Binary files a/fp2/week1/mart/Galgje and /dev/null differ diff --git a/fp2/week1/mart/Galgje.icl b/fp2/week1/mart/Galgje.icl deleted file mode 100644 index e5106ee..0000000 --- a/fp2/week1/mart/Galgje.icl +++ /dev/null @@ -1,13 +0,0 @@ -module Galgje - -import StdEnv, Random - -//randomWord :: *env -> (Maybe String, *env) | FileSystem env -//randomWord env -//# (ss,env) = readLines lexicon_file env -//| ss == Nothing = (Nothing, env) -//# (seed,env) = getNewRandomSeed env -//| otherwise = (Just (skip_nl ((shuffle (fromJust ss) seed)!!0)), env) - -Start :: *World -> *World -Start world = world diff --git a/fp2/week1/mart/GalgjeWF.dcl b/fp2/week1/mart/GalgjeWF.dcl deleted file mode 100644 index a777b95..0000000 --- a/fp2/week1/mart/GalgjeWF.dcl +++ /dev/null @@ -1,5 +0,0 @@ -definition module GalgjeWF - -import iTasks - -galgje :: [Workflow] diff --git a/fp2/week1/mart/Random.dcl b/fp2/week1/mart/Random.dcl deleted file mode 100644 index 47a7c18..0000000 --- a/fp2/week1/mart/Random.dcl +++ /dev/null @@ -1,19 +0,0 @@ -definition module Random - - // Random number generator voor Linux gebruikers - // interface compatible met Random.dcl (helaas) - // -- mschool@science.ru.nl - -import StdFile - -:: RandomSeed - -// nullRandomSeed generates a fixed RandomSeed -nullRandomSeed :: RandomSeed - -// GetNewRandomSeed generates a good RandomSeed, using /dev/urandom -getNewRandomSeed :: !*env -> (!RandomSeed, !*env) | FileSystem env - -// Given a RandomSeed, Random generates a random number and a new RandomSeed. -random :: !RandomSeed -> .(!Int, !RandomSeed) - diff --git a/fp2/week1/mart/Random.icl b/fp2/week1/mart/Random.icl deleted file mode 100644 index b6e0768..0000000 --- a/fp2/week1/mart/Random.icl +++ /dev/null @@ -1,20 +0,0 @@ -implementation module Random - -import StdFile, StdList, StdMisc, StdArray, Random - -:: RandomSeed :== Int - -nullRandomSeed :: RandomSeed -nullRandomSeed = 0 - -getNewRandomSeed :: !*env -> (!RandomSeed, !*env) | FileSystem env -getNewRandomSeed env -# (ok, src, env) = sfopen "/dev/urandom" FReadData env -| not ok => abort "could not open /dev/urandom" -# (bytes, src) = sfreads src 4 - seed = foldl (\x y->(x<<8)+toInt y) 0 [c \\ c<-:bytes] -| otherwise => (seed, env) - -random :: !RandomSeed -> .(!Int, !RandomSeed) -random seed = (seed>>16 bitand 0xFFFF, seed*0x08088405+1) - diff --git a/fp2/week1/mart/RandomGetallen b/fp2/week1/mart/RandomGetallen deleted file mode 100755 index 0482437..0000000 Binary files a/fp2/week1/mart/RandomGetallen and /dev/null differ diff --git a/fp2/week1/mart/RandomGetallen.dcl b/fp2/week1/mart/RandomGetallen.dcl deleted file mode 100644 index 66a2c6c..0000000 --- a/fp2/week1/mart/RandomGetallen.dcl +++ /dev/null @@ -1,7 +0,0 @@ -definition module RandomGetallen - -import Random - -random_n :: Int RandomSeed -> ([Int],RandomSeed) -random_inf :: RandomSeed -> [Int] -//shuffle :: [a] RandomSeed -> [a] diff --git a/fp2/week1/mart/RandomGetallen.icl b/fp2/week1/mart/RandomGetallen.icl deleted file mode 100644 index b756c91..0000000 --- a/fp2/week1/mart/RandomGetallen.icl +++ /dev/null @@ -1,33 +0,0 @@ -implementation module RandomGetallen - -import StdEnv, Random - -//Start :: *World -> ([Int],*World) -//Start world -//# (rs,world) = getNewRandomSeed world -//= (shuffle [1..10] rs,world) - - -Start = shuffle [1..10] nullRandomSeed - -random_n :: Int RandomSeed -> ([Int],RandomSeed) -random_n n seed = seqList (repeatn n random) seed - -random_inf :: RandomSeed -> [Int] -random_inf seed = iterateSt random seed - -iterateSt :: (s -> (a,s)) s -> [a] -iterateSt f s = [a : iterateSt f s`] -where - (a,s`) = f s - -shuffle :: [a] RandomSeed -> [a] -shuffle xs seed = (perms xs) !! ((fst (random seed)) rem (fac (length xs))) - -fac :: Int -> Int -fac 0 = 1 -fac n = n * fac (n-1) - -perms :: [a] -> [[a]] -perms [] = [[]] -perms xs = [[xs!!i : xs`] \\ i <- [0..length xs - 1] , xs` <- perms (take i xs ++ drop (i+1) xs)] diff --git a/fp2/week1/mart/SimpleFileIO.dcl b/fp2/week1/mart/SimpleFileIO.dcl deleted file mode 100644 index 1bd97da..0000000 --- a/fp2/week1/mart/SimpleFileIO.dcl +++ /dev/null @@ -1,14 +0,0 @@ -definition module SimpleFileIO - -import StdFile, StdOverloaded, StdMaybe - -// 1. -readFile :: String *env -> (Maybe String, *env) | FileSystem env -writeFile :: String String *env -> (Bool, *env) | FileSystem env - -// 2. -readLines :: String *env -> (Maybe [String],*env) | FileSystem env -writeLines :: String [String] *env -> (Bool, *env) | FileSystem env - -// 3. -//mapFile :: String String (a -> b) *env -> (Bool, *env) | FileSystem env & ... a & ... b diff --git a/fp2/week1/mart/SimpleFileIO.icl b/fp2/week1/mart/SimpleFileIO.icl deleted file mode 100644 index b2a483a..0000000 --- a/fp2/week1/mart/SimpleFileIO.icl +++ /dev/null @@ -1,39 +0,0 @@ -implementation module SimpleFileIO - -import StdEnv, StdFile, StdOverloaded, StdMaybe - -// 1. -readFile :: String *env -> (Maybe String, *env) | FileSystem env -readFile s env -# (ss, env) = readLines s env -| ss == Nothing = (Nothing, env) -| otherwise = (Just (foldl (+++) "" (fromJust ss)), env) - -writeFile :: String String *env -> (Bool, *env) | FileSystem env -writeFile fn s env -# (ok, outfile, env) = fopen fn FWriteText env -| not ok = (False, env) -# outfile = fwrites s outfile -# (ok, env) = fclose outfile env -| otherwise = (ok, env) - -// 2. -readLines :: String *env -> (Maybe [String],*env) | FileSystem env -readLines s env -# (ok, infile, env) = sfopen s FReadText env -| not ok = (Nothing, env) -| otherwise = (Just (fst (readLines` infile)), env) -where - readLines` :: File -> ([String], File) - readLines` file - | sfend file = ([], file) - # (line, file) = sfreadline file - # (ss, file) = readLines` file - | otherwise = ([line : ss], file) - -writeLines :: String [String] *env -> (Bool, *env) | FileSystem env -writeLines fn ss env = writeFile fn (foldl (+++) "" [s +++ "\n" \\ s <- ss]) env - -// 3. -//mapFile :: String String (a -> b) *env -> (Bool, *env) | FileSystem env & ... a & ... b - diff --git a/fp2/week2/camil/StdIOMonad.dcl b/fp2/week2/camil/StdIOMonad.dcl deleted file mode 100644 index 580efaa..0000000 --- a/fp2/week2/camil/StdIOMonad.dcl +++ /dev/null @@ -1,40 +0,0 @@ -definition module StdIOMonad - -// Deze module verpakt een aantal StdFile functies in een monadische jas - -import StdMonad, StdMaybe - -:: IO a -:: *W -:: Void = Void -:: Filemode = Lees | Schrijf -:: Filenaam :== String -:: Filehandle :== String - -// voer monadische I/O actie uit op de wereld: -doIO:: (IO a) *World -> *(a, *W) - -// IO is een monad: -instance return IO -instance >>= IO - -// lees regel van de console: -read :: IO String - -// schrijf regel naar de console: -write :: String -> IO Void - -// open de file met gegeven filenaam en mode: -open :: Filenaam Filemode -> IO (Maybe Filehandle) - -// sluit de file met gegeven filenaam: -close :: Filehandle -> IO Bool - -// bepaal of het lezen van de file klaar is: -eof :: Filehandle -> IO Bool - -// lees een regel van een file: -readline :: Filehandle -> IO (Maybe String) - -// schrijf een regel naar een file: -writeline :: String Filehandle -> IO Bool diff --git a/fp2/week2/camil/StdIOMonad.icl b/fp2/week2/camil/StdIOMonad.icl deleted file mode 100644 index c25cb4c..0000000 --- a/fp2/week2/camil/StdIOMonad.icl +++ /dev/null @@ -1,130 +0,0 @@ -implementation module StdIOMonad - -import StdBool -import StdEnum -import StdFile -import StdList -import StdMaybe -import StdMisc -import StdMonad -import StdOverloaded -import StdString -import StdTuple - -:: IO a = IO (*W -> *(a, *W)) -:: *W :== *(*World, *[*(Filehandle, *File)]) -:: Filemode = Lees | Schrijf -:: Filenaam :== String -:: Filehandle :== String - -instance toInt Filemode where - toInt Lees = FReadText - toInt Schrijf = FWriteText - -//voer monadische I/O actie uit op de wereld: -doIO:: (IO a) *World -> *(a, *W) -doIO (IO f) w = f (w, []) - -unIO:: (IO a) -> *W -> *(a, *W) -unIO (IO f) = f - -// IO is een monad: -instance return IO where - return x = IO (\w -> (x, w)) -instance >>= IO where - (>>=) (IO f) g = IO (\w = let (a, w1) = f w in unIO (g a) w1) - -read:: IO String -read = IO read` - where - read`:: *W -> *(String, *W) - read` (world, s) - # (io, world) = stdio world - # (line, io) = freadline io - # (_, world) = fclose io world - = (line, (world, s)) - -// schrijf regel naar de console: -write :: String -> IO Void -write s = IO (write` s) - where - write`:: String *W -> *(Void, *W) - write` line (world, s) - # (io, world) = stdio world - # io = io <<< line - # (_, world) = fclose io world - = (Void, (world, s)) - -// open de file met gegeven filenaam en mode: -find:: Filehandle *[*(Filehandle, *File)] -> (Maybe *(Filehandle, *File), *[*(Filehandle, *File)]) -find fh fs -# (fhs, fis) = unzip fs -# fhsC = zip2 [0..length fhs] fhs -# index = [(i, h) \\ (i, h) <- fhsC | h == fh] -| length index == 0 = (Nothing, zip2 fhs fis) -# index = fst (hd index) -# (fis1, fis2) = splitAt index fis -# (fhs1, fhs2) = splitAt index fhs -# (thefile, fis2) = splitAt 1 fis2 -# (thehandle, fhs2) = splitAt 1 fhs2 -= (Just (hd thehandle, hd thefile), zip2 (fhs1 ++ fhs2) (fis1 ++ fis2)) - - -open:: Filenaam Filemode -> IO (Maybe Filehandle) -open s m = IO (open` s m) - where - open`:: String Filemode *W -> *(Maybe Filehandle, *W) - open` fp m (world, fs) - | any (\l = fp == fst l) fs = (Nothing, (world, fs)) - # (ok, file, world) = fopen fp (toInt m) world - = (Just fp, (world, [(fp, file):fs])) - -// sluit de file met gegeven filenaam: -close:: Filehandle -> IO Bool -close fh = IO (close` fh) - where - close`:: Filehandle *W -> *(Bool, *W) - close` fp (world, fs) - # (currentfiletuple, fs) = find fp fs - | isNothing currentfiletuple = (False, (world, fs)) - # (currentfh, currentfile) = fromJust currentfiletuple - # (ok, world) = fclose currentfile world - | not ok = abort "File can't be closed" - | otherwise = (True, (world, fs)) - - -// bepaal of het lezen van de file klaar is: -eof :: Filehandle -> IO Bool -eof fh = IO (eof` fh) - where - eof`:: Filehandle *W -> *(Bool, *W) - eof` fp (world, fs) - # (currentfiletuple, fs) = find fp fs - | isNothing currentfiletuple = abort "Can't do eof on non-existing file" - # (currentfh, currentfile) = fromJust currentfiletuple - # (ok, file) = fend currentfile - = (ok, (world, [(currentfh, file):fs])) - -// lees een regel van een file: -readline :: Filehandle -> IO (Maybe String) -readline fh = IO (readline` fh) - where - readline` :: Filehandle *W -> *(Maybe String, *W) - readline` fh (world, fs) - # (currentfiletuple, fs) = find fh fs - | isNothing currentfiletuple = (Nothing, (world, fs)) - # (currentfh, currentfile) = fromJust currentfiletuple - # (s, currentfile) = freadline currentfile - = (Just s, (world, [(currentfh, currentfile):fs])) - -// schrijf een regel naar een file: -writeline :: String Filehandle -> IO Bool -writeline s fh = IO (writeline` s fh) - where - writeline` :: String Filehandle *W -> *(Bool, *W) - writeline` s fh (world, fs) - # (currentfiletuple, fs) = find fh fs - | isNothing currentfiletuple = (True, (world, fs)) - # (currentfh, currentfile) = fromJust currentfiletuple - # currentfile = fwrites (s +++ "\n") currentfile - = (True, (world, [(currentfh, currentfile):fs])) diff --git a/fp2/week2/camil/StdMaybe.dcl b/fp2/week2/camil/StdMaybe.dcl deleted file mode 100644 index 2403683..0000000 --- a/fp2/week2/camil/StdMaybe.dcl +++ /dev/null @@ -1,41 +0,0 @@ -definition module StdMaybe - -// ******************************************************************************** -// Clean StdLib library module, version 1.0 -// ******************************************************************************** - -from StdFunc import :: St; -from StdOverloaded import class ==(..); - -:: Maybe x - = Just x - | Nothing - -isJust :: !(Maybe .x) -> Bool // case @1 of (Just _) -> True; _ -> False -isNothing :: !(Maybe .x) -> Bool // not o isJust -fromJust :: !(Maybe .x) -> .x // \(Just x) -> x - -// for possibly unique elements: -u_isJust :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) -u_isNothing :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) - -accMaybe :: .(St .x .a) !u:(Maybe .x) -> (!Maybe .a,!u:Maybe .x) -// accMaybe f (Just x) = (Just (fst (f x)),Just (snd (f x))) -// accMaybe f Nothing = (Nothing,Nothing) - -mapMaybe :: .(.x -> .y) !(Maybe .x) -> Maybe .y -// mapMaybe f (Just x) = Just (f x) -// mapMaybe f Nothing = Nothing - -instance == (Maybe x) | == x -// Nothing==Nothing -// Just a ==Just b <= a==b - -maybeToList :: !(Maybe .a) -> [.a]; -// returns list with no or one element - -listToMaybe :: ![.a] -> .Maybe .a; -// returns Just head of list if possible - -catMaybes :: ![Maybe .a] -> .[.a]; -// catMaybes ms = [ m \\ Just m <- ms ] diff --git a/fp2/week2/camil/StdMaybe.icl b/fp2/week2/camil/StdMaybe.icl deleted file mode 100644 index 4eed325..0000000 --- a/fp2/week2/camil/StdMaybe.icl +++ /dev/null @@ -1,65 +0,0 @@ -implementation module StdMaybe - -// ******************************************************************************** -// Clean StdLib library module, version 1.0 -// ******************************************************************************** - -from StdFunc import :: St; -from StdOverloaded import class ==(..); - -:: Maybe x - = Just x - | Nothing - -isJust :: !(Maybe .x) -> Bool -isJust Nothing = False -isJust _ = True - -isNothing :: !(Maybe .x) -> Bool -isNothing Nothing = True -isNothing _ = False - -u_isJust :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) -u_isJust nothing=:Nothing - = (False, nothing) -u_isJust just - = (True, just) - -u_isNothing :: !u:(Maybe .x) -> (!Bool, !u:Maybe .x) -u_isNothing nothing=:Nothing - = (True, nothing) -u_isNothing just - = (False,just) - -fromJust :: !(Maybe .x) -> .x -fromJust (Just x) = x - -accMaybe :: .(St .x .a) !u:(Maybe .x) -> (!Maybe .a,!u:Maybe .x) -accMaybe f (Just x) - # (a,x) = f x - = (Just a,Just x) -accMaybe _ nothing - = (Nothing,nothing) - -mapMaybe :: .(.x -> .y) !(Maybe .x) -> Maybe .y -mapMaybe f (Just x) = Just (f x) -mapMaybe _ nothing = Nothing - -instance == (Maybe x) | == x where - (==) Nothing maybe = case maybe of - Nothing -> True - just -> False - (==) (Just a) maybe = case maybe of - Just b -> a==b - nothing -> False - -maybeToList :: !(Maybe .a) -> [.a]; -maybeToList Nothing = [] -maybeToList (Just a) = [a] - -listToMaybe :: ![.a] -> .Maybe .a; -listToMaybe [] = Nothing -listToMaybe [a:_] = Just a - -catMaybes :: ![Maybe .a] -> .[.a]; -catMaybes ms = [ m \\ Just m <- ms ] diff --git a/fp2/week2/camil/StdMonad.dcl b/fp2/week2/camil/StdMonad.dcl deleted file mode 100644 index cd1c654..0000000 --- a/fp2/week2/camil/StdMonad.dcl +++ /dev/null @@ -1,8 +0,0 @@ -definition module StdMonad - -class return c :: a -> c a -class (>>=) infix 0 c :: (c a) (a -> c b) -> c b -class fail c :: c a - -class Monad c | return, >>= c -class MonadFail c | Monad, fail c diff --git a/fp2/week2/camil/StdMonad.icl b/fp2/week2/camil/StdMonad.icl deleted file mode 100644 index db193ab..0000000 --- a/fp2/week2/camil/StdMonad.icl +++ /dev/null @@ -1 +0,0 @@ -implementation module StdMonad diff --git a/fp2/week2/camil/Test.dcl b/fp2/week2/camil/Test.dcl deleted file mode 100644 index 21f08d1..0000000 --- a/fp2/week2/camil/Test.dcl +++ /dev/null @@ -1 +0,0 @@ -definition module Test diff --git a/fp2/week2/camil/Test.icl b/fp2/week2/camil/Test.icl deleted file mode 100644 index 8044d3f..0000000 --- a/fp2/week2/camil/Test.icl +++ /dev/null @@ -1,12 +0,0 @@ -implementation module Test - -import StdIOMonad - -Start world = doIO ( - open "camil.txt" Lees >>= - \_ = open "mart.txt" Schrijf >>= - \_ = readline "camil.txt" >>= - \l = writeline (fromJust l) "mart.txt" >>= - \_ = close "camil.txt" >>= - \_ = close "mart.txt" - ) world diff --git a/fp2/week2/mart/StdIOMonad.dcl b/fp2/week2/mart/StdIOMonad.dcl deleted file mode 100644 index 580efaa..0000000 --- a/fp2/week2/mart/StdIOMonad.dcl +++ /dev/null @@ -1,40 +0,0 @@ -definition module StdIOMonad - -// Deze module verpakt een aantal StdFile functies in een monadische jas - -import StdMonad, StdMaybe - -:: IO a -:: *W -:: Void = Void -:: Filemode = Lees | Schrijf -:: Filenaam :== String -:: Filehandle :== String - -// voer monadische I/O actie uit op de wereld: -doIO:: (IO a) *World -> *(a, *W) - -// IO is een monad: -instance return IO -instance >>= IO - -// lees regel van de console: -read :: IO String - -// schrijf regel naar de console: -write :: String -> IO Void - -// open de file met gegeven filenaam en mode: -open :: Filenaam Filemode -> IO (Maybe Filehandle) - -// sluit de file met gegeven filenaam: -close :: Filehandle -> IO Bool - -// bepaal of het lezen van de file klaar is: -eof :: Filehandle -> IO Bool - -// lees een regel van een file: -readline :: Filehandle -> IO (Maybe String) - -// schrijf een regel naar een file: -writeline :: String Filehandle -> IO Bool diff --git a/fp2/week2/mart/StdIOMonad.icl b/fp2/week2/mart/StdIOMonad.icl deleted file mode 100644 index ffa2857..0000000 --- a/fp2/week2/mart/StdIOMonad.icl +++ /dev/null @@ -1,138 +0,0 @@ -implementation module StdIOMonad - -import StdBool -import StdEnum -import StdFile -import StdList -import StdMaybe -import StdMisc -import StdMonad -import StdOverloaded -import StdString -import StdTuple - -:: IO a = IO (*W -> *(a, *W)) -:: *W :== *(*World, *[*(Filehandle, *File)]) -:: Filemode = Lees | Schrijf -:: Filenaam :== String -:: Filehandle :== String - -// Conversion from our filemodes to StdFile filemodes -instance toInt Filemode where - toInt Lees = FReadText - toInt Schrijf = FWriteText - -// Apply the monadic program on the world -doIO:: (IO a) *World -> *(a, *W) -doIO (IO f) w = f (w, []) - -// Lift the value out of the monadic domain -unIO:: (IO a) -> *W -> *(a, *W) -unIO (IO f) = f - -instance return IO where - return x = IO (\w -> (x, w)) -instance >>= IO where - (>>=) (IO f) g = IO (\w = let (a, w1) = f w in unIO (g a) w1) - -// Read one line from the console -read:: IO String -read = IO read` - where - read`:: *W -> *(String, *W) - read` (world, s) - # (io, world) = stdio world - # (line, io) = freadline io - # (_, world) = fclose io world - = (line, (world, s)) - -// Write a line from the console -write :: String -> IO Void -write s = IO (write` s) - where - write`:: String *W -> *(Void, *W) - write` line (world, s) - # (io, world) = stdio world - # io = io <<< line - # (_, world) = fclose io world - = (Void, (world, s)) - -// Open a file -open:: Filenaam Filemode -> IO (Maybe Filehandle) -open s m = IO (open` s m) - where - open`:: String Filemode *W -> *(Maybe Filehandle, *W) - open` fp m (world, fs) - | any (\l = fp == fst l) fs = (Nothing, (world, fs)) - # (ok, file, world) = fopen fp (toInt m) world - = (Just fp, (world, [(fp, file):fs])) - -// Close a file. If the file can't be closed by the system the program will -// abort -close:: Filehandle -> IO Bool -close fh = IO (close` fh) - where - close`:: Filehandle *W -> *(Bool, *W) - close` fp (world, fs) - # (currentfiletuple, fs) = getFH fp fs - | isNothing currentfiletuple = (False, (world, fs)) - # (currentfh, currentfile) = fromJust currentfiletuple - # (ok, world) = fclose currentfile world - | not ok = abort "File can't be closed" - | otherwise = (True, (world, fs)) - - -// Determine if the file is at the end. This will abort when the file is not -// open or error if the file is not opened for reading. -eof :: Filehandle -> IO Bool -eof fh = IO (eof` fh) - where - eof`:: Filehandle *W -> *(Bool, *W) - eof` fp (world, fs) - # (currentfiletuple, fs) = getFH fp fs - | isNothing currentfiletuple = abort "Can't do eof on non-existing file" - # (currentfh, currentfile) = fromJust currentfiletuple - # (ok, file) = fend currentfile - = (ok, (world, [(currentfh, file):fs])) - -// Read one line from a file (including newline). This will abort when the file -// is not open or error if the file is not opened for reading. -readline :: Filehandle -> IO (Maybe String) -readline fh = IO (readline` fh) - where - readline` :: Filehandle *W -> *(Maybe String, *W) - readline` fh (world, fs) - # (currentfiletuple, fs) = getFH fh fs - | isNothing currentfiletuple = abort "File not open" - # (currentfh, currentfile) = fromJust currentfiletuple - # (s, currentfile) = freadline currentfile - = (Just s, (world, [(currentfh, currentfile):fs])) - -// Write one line from a file (will not append newline). This will abort when -// the file is not open or error if the file is not opened for writing. -writeline :: String Filehandle -> IO Bool -writeline s fh = IO (writeline` s fh) - where - writeline` :: String Filehandle *W -> *(Bool, *W) - writeline` s fh (world, fs) - # (currentfiletuple, fs) = getFH fh fs - | isNothing currentfiletuple = abort "File not open" - # (currentfh, currentfile) = fromJust currentfiletuple - # currentfile = fwrites s currentfile - = (True, (world, [(currentfh, currentfile):fs])) - -// Gets the file associated with the filehandle given, this is done in a very -// ugly way to retain uniqueness... -getFH:: Filehandle *[*(Filehandle, *File)] -> - (Maybe *(Filehandle, *File), *[*(Filehandle, *File)]) -getFH fh fs -# (fhs, fis) = unzip fs -# fhsC = zip2 [0..length fhs] fhs -# index = [(i, h) \\ (i, h) <- fhsC | h == fh] -| length index == 0 = (Nothing, zip2 fhs fis) -# index = fst (hd index) -# (fis1, fis2) = splitAt index fis -# (fhs1, fhs2) = splitAt index fhs -# (thefile, fis2) = splitAt 1 fis2 -# (thehandle, fhs2) = splitAt 1 fhs2 -= (Just (hd thehandle, hd thefile), zip2 (fhs1 ++ fhs2) (fis1 ++ fis2)) diff --git a/fp2/week2/mart/StdMonad.dcl b/fp2/week2/mart/StdMonad.dcl deleted file mode 100644 index cd1c654..0000000 --- a/fp2/week2/mart/StdMonad.dcl +++ /dev/null @@ -1,8 +0,0 @@ -definition module StdMonad - -class return c :: a -> c a -class (>>=) infix 0 c :: (c a) (a -> c b) -> c b -class fail c :: c a - -class Monad c | return, >>= c -class MonadFail c | Monad, fail c diff --git a/fp2/week2/mart/StdMonad.icl b/fp2/week2/mart/StdMonad.icl deleted file mode 100644 index db193ab..0000000 --- a/fp2/week2/mart/StdMonad.icl +++ /dev/null @@ -1 +0,0 @@ -implementation module StdMonad diff --git a/fp2/week2/mart/Test.dcl b/fp2/week2/mart/Test.dcl deleted file mode 100644 index 21f08d1..0000000 --- a/fp2/week2/mart/Test.dcl +++ /dev/null @@ -1 +0,0 @@ -definition module Test diff --git a/fp2/week2/mart/Test.icl b/fp2/week2/mart/Test.icl deleted file mode 100644 index ff32dfe..0000000 --- a/fp2/week2/mart/Test.icl +++ /dev/null @@ -1,13 +0,0 @@ -implementation module Test - -import StdIOMonad - -// This assumes a file "camil.txt" and writes a line from it to "mart.txt" -Start world = doIO ( - open "camil.txt" Lees >>= - \_ = open "mart.txt" Schrijf >>= - \_ = readline "camil.txt" >>= - \l = writeline (fromJust l) "mart.txt" >>= - \_ = close "camil.txt" >>= - \_ = close "mart.txt" - ) world diff --git a/fp2/week2/mart/camil.txt b/fp2/week2/mart/camil.txt deleted file mode 100644 index b8b933b..0000000 --- a/fp2/week2/mart/camil.txt +++ /dev/null @@ -1,2 +0,0 @@ -Line one -Line two diff --git a/fp2/week2/mart/s4109503_s4498062_fp2_w2.tar.gz b/fp2/week2/mart/s4109503_s4498062_fp2_w2.tar.gz deleted file mode 100644 index 587d742..0000000 Binary files a/fp2/week2/mart/s4109503_s4498062_fp2_w2.tar.gz and /dev/null differ diff --git a/fp2/week3/camil/StdDynSet.dcl b/fp2/week3/camil/StdDynSet.dcl deleted file mode 100644 index 160af6c..0000000 --- a/fp2/week3/camil/StdDynSet.dcl +++ /dev/null @@ -1,24 +0,0 @@ -definition module StdDynSet - -import StdOverloaded - -class Set a | TC, ==, toString a - -:: Set - -instance zero Set -instance toString Set -instance == Set - -toSet :: a -> Set | Set a - -nrOfElts :: Set -> Int -isEmptySet :: Set -> Bool - -memberOfSet :: a Set -> Bool | Set a -isSubset :: Set Set -> Bool -isStrictSubset :: Set Set -> Bool - -union :: Set Set -> Set -intersection :: Set Set -> Set -without :: Set Set -> Set diff --git a/fp2/week3/camil/StdDynSet.icl b/fp2/week3/camil/StdDynSet.icl deleted file mode 100644 index 576bec9..0000000 --- a/fp2/week3/camil/StdDynSet.icl +++ /dev/null @@ -1,62 +0,0 @@ -// Mart Lubbers s4109503, Camil Staps s4498062 - -implementation module StdDynSet - -import StdEnv -import StdMaybe -import StdDynamic - -isEqual:: Dynamic t -> Bool | Set t -isEqual (x :: t^) a = x == a -isEqual _ _ = False - -class Set a | TC, ==, toString a - -:: Set = Set [(Dynamic, Dynamic -> Bool, String)] - -instance zero Set -where zero = Set [] - -instance toString Set -where toString (Set [(_,_,a):as]) = "{" +++ a +++ (foldl (+++) "" ["," +++ s \\ (_,_,s) <- as]) +++ "}" - -instance == Set -where == a b = nrOfElts a == nrOfElts b && isSubset a b - -toSet :: a -> Set | Set a -toSet e = Set [(dynamic e, \x = isEqual x e, toString e)] - -nrOfElts :: Set -> Int -nrOfElts (Set a) = length a - -isEmptySet :: Set -> Bool -isEmptySet a = (nrOfElts a) == 0 - -memberOfSet :: a Set -> Bool | Set a -memberOfSet _ (Set []) = False -memberOfSet x (Set [(y,_,_):ys]) = isEqual y x || memberOfSet x (Set ys) - -dynMemberOfSet :: Dynamic Set -> Bool -dynMemberOfSet _ (Set []) = False -dynMemberOfSet x (Set [(_,eq,_):ys]) = eq x || dynMemberOfSet x (Set ys) - -isSubset :: Set Set -> Bool -isSubset a b = (nrOfElts a) == (nrOfElts (intersection a b)) - -isStrictSubset :: Set Set -> Bool -isStrictSubset a b = isSubset a b && nrOfElts a < nrOfElts b - -union :: Set Set -> Set -union (Set a) (Set b) = Set (a ++ (fromSet (without (Set b) (Set a)))) -where - fromSet :: Set -> [(Dynamic, Dynamic -> Bool, String)] - fromSet (Set x) = x - -intersection :: Set Set -> Set -intersection as (Set []) = as -intersection (Set as) (Set bs) = Set [(a,eq,ts) \\ (a,eq,ts) <- as | dynMemberOfSet a (Set bs)] - -without :: Set Set -> Set -without (Set as) (Set bs) = Set [(a,eq,ts) \\ (a,eq,ts) <- as | not (dynMemberOfSet a (Set bs))] - -Start = toString (union (toSet 1) (toSet 2)) diff --git a/fp2/week3/camil/StdDynSet.prj b/fp2/week3/camil/StdDynSet.prj deleted file mode 100644 index 4328042..0000000 --- a/fp2/week3/camil/StdDynSet.prj +++ /dev/null @@ -1,569 +0,0 @@ -Version: 1.4 -Global - ProjectRoot: . - Built: True - Target: Experimental - Exec: {Project}\StdDynSet.exe - CodeGen - CheckStacks: False - CheckIndexes: True - Application - HeapSize: 2097152 - StackSize: 512000 - ExtraMemory: 81920 - IntialHeapSize: 204800 - HeapSizeMultiplier: 4096 - ShowExecutionTime: False - ShowGC: False - ShowStackSize: False - MarkingCollector: False - StandardRuntimeEnv: True - Profile - Memory: False - MemoryMinimumHeapSize: 0 - Time: False - Stack: False - Output - Output: ShowConstructors - Font: Courier - FontSize: 9 - WriteStdErr: False - Link - LinkMethod: Static - GenerateRelocations: False - GenerateLinkMap: False - LinkResources: False - ResourceSource: - GenerateDLL: False - ExportedNames: - Paths - Path: {Project} - Precompile: - Postlink: -MainModule - Name: StdDynSet - Dir: {Project} - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False -OtherModules - Module - Name: StdCleanTypes - Dir: {Application}\Libraries\Dynamics - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamic - Dir: {Application}\Libraries\Dynamics - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: BitSet - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DefaultElem - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: EnDecode - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynIDMacros - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicUtilities - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicLowLevelInterface - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicTypes - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicVersion - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemDynamic - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicGraphConversion - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicLinkerInterface - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: read_function.obj - Module - Name: memory - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: mem.obj - Module - Name: memory_mapped_files - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: low.obj - NeededLibraries - Library: StdDynamic_kernel32_library - Module - Name: shared_buffer - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdArray - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdBool - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdChar - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdCharList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdClass - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdEnum - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdEnv - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdFile - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdFunc - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdInt - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdMisc - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdOrdList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdOverloaded - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdReal - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdString - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdTuple - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemArray - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemEnum - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdMaybe - Dir: {Application}\Libraries\StdLib - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False diff --git a/fp2/week3/camil/StdDynSet.prp b/fp2/week3/camil/StdDynSet.prp deleted file mode 100644 index 87899a5..0000000 --- a/fp2/week3/camil/StdDynSet.prp +++ /dev/null @@ -1,217 +0,0 @@ -Version: 1.4 -MainModule - Name: StdDynSet - Dir: {Project} - Dcl - WindowPosition - X: 65 - Y: 47 - SizeX: 800 - SizeY: 640 - DclOpen: False - Icl - WindowPosition - X: 10 - Y: 10 - SizeX: 800 - SizeY: 600 - IclOpen: False -OtherModules - Module - Name: StdCleanTypes - Dir: {Application}\Libraries\Dynamics - Dcl - WindowPosition - X: 10 - Y: 10 - SizeX: 800 - SizeY: 600 - DclOpen: False - IclOpen: False - Module - Name: StdDynamic - Dir: {Application}\Libraries\Dynamics - Dcl - WindowPosition - X: 276 - Y: 168 - SizeX: 800 - SizeY: 600 - DclOpen: False - IclOpen: False - Module - Name: BitSet - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: DefaultElem - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: EnDecode - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: DynIDMacros - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: DynamicUtilities - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicLowLevelInterface - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicTypes - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicVersion - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: _SystemDynamic - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: DynamicGraphConversion - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: DynamicLinkerInterface - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: memory - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: memory_mapped_files - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: shared_buffer - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: StdArray - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdBool - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdChar - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdCharList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdClass - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdEnum - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdEnv - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdFile - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdFunc - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdInt - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdMisc - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdOrdList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdOverloaded - Dir: {Application}\Libraries\StdEnv - Dcl - WindowPosition - X: 10 - Y: 10 - SizeX: 800 - SizeY: 600 - DclOpen: False - IclOpen: False - Module - Name: StdReal - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdString - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdTuple - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: _SystemArray - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: _SystemEnum - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdMaybe - Dir: {Application}\Libraries\StdLib - DclOpen: False - IclOpen: False diff --git a/fp2/week3/mart/GetallenRaden.icl b/fp2/week3/mart/GetallenRaden.icl deleted file mode 100644 index c1b2bb0..0000000 --- a/fp2/week3/mart/GetallenRaden.icl +++ /dev/null @@ -1,52 +0,0 @@ -// Mart Lubbers s4109503, Camil Staps s4498062 - -module GetallenRaden - -import StdEnv -import StdDynamic, StdDynamicFileIO -import StdFileSelect - -// Example generation program -//fib :: [Int] -//fib = [fib` i \\ i <- [0..]] -// where -// fib` 0 = 0 -// fib` 1 = 1 -// fib` n = fib` (n-1) + fib` (n-2) -// -//Start :: *World -> (Bool, *World) -//Start world = writeDynamic "fib" (dynamic fib) world - -makeSeq :: Dynamic -> [Int] -makeSeq (x :: [Int]) = x -makeSeq _ = abort "You selected a file not containing a sequence" - -basename :: String Int -> String -basename s 0 = toString s.[0] -basename s n = let c = toString s.[n] in if (c == "\\") "" ((basename s (n-1)) +++ c) - -loadSeq :: String *World -> *([Int], String, *World) -loadSeq s world -# s = let l = size s in s % (0, l-5) -# (ok, dyn, world) = readDynamic s world -| not ok = abort "You didn't select a dynamic file" -| otherwise = (makeSeq dyn, basename s ((size s)-1), world) - -play :: *File String [Int] Int Int -> *File -play io _ _ _ 5 = io <<< "Congratulations, you had 5 correct answers\n" -play io seqname [nextnum:sequence] currentnum correct -# io = io <<< (seqname +++ "[" +++ toString currentnum +++ "] = " +++ toString nextnum +++ "\n") -# (ok, guessednumber, io) = freadi io -| not ok = play (snd (freadline io)) seqname sequence (currentnum + 1) correct -# (io, correct) = if (guessednumber == hd sequence) (io, correct+1) (io <<< "Incorrect...\n", correct) -= play (snd (freadline io)) seqname sequence (currentnum + 1) correct - -Start :: *World -> *World -Start world -# (inputfilepath, world) = selectInputFile world -| isNothing inputfilepath = abort "Please select a file" -# (sequence, sequencename, world) = loadSeq (fromJust inputfilepath) world -# (io, world) = stdio world -# io = (play io sequencename sequence 0 0) <<< "Press any key to close" -# (_, world) = fclose io world -= world diff --git a/fp2/week3/mart/GetallenRaden.prj b/fp2/week3/mart/GetallenRaden.prj deleted file mode 100644 index e857306..0000000 --- a/fp2/week3/mart/GetallenRaden.prj +++ /dev/null @@ -1,1594 +0,0 @@ -Version: 1.4 -Global - ProjectRoot: . - Built: True - Target: Object IO - Exec: {Project}\GetallenRaden.exe - CodeGen - CheckStacks: False - CheckIndexes: True - Application - HeapSize: 2097152 - StackSize: 512000 - ExtraMemory: 81920 - IntialHeapSize: 204800 - HeapSizeMultiplier: 4096 - ShowExecutionTime: False - ShowGC: False - ShowStackSize: False - MarkingCollector: False - StandardRuntimeEnv: True - Profile - Memory: False - MemoryMinimumHeapSize: 0 - Time: False - Stack: False - Output - Output: NoReturnType - Font: Courier - FontSize: 9 - WriteStdErr: False - Link - LinkMethod: Dynamic - GenerateRelocations: False - GenerateLinkMap: False - LinkResources: False - ResourceSource: - GenerateDLL: False - ExportedNames: - Paths - Path: {Project} - Path: {Application}\Libraries\Dynamics - Path: {Application}\Libraries\Dynamics\implementation - Path: {Application}\Libraries\Dynamics\implementation\windows - Path: {Application}\Libraries\Dynamics\general - Path: {Application}\Libraries\Directory - Precompile: - Postlink: -MainModule - Name: GetallenRaden - Dir: {Project} - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False -OtherModules - Module - Name: StdCleanTypes - Dir: {Application}\Libraries\Dynamics - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamic - Dir: {Application}\Libraries\Dynamics - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicFileIO - Dir: {Application}\Libraries\Dynamics - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynID - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynIDMacros - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicUtilities - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicLowLevelInterface - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicTypes - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicVersion - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemDynamic - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicGraphConversion - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicLinkerInterface - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: read_function.obj - Module - Name: memory - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: mem.obj - Module - Name: memory_mapped_files - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: low.obj - NeededLibraries - Library: StdDynamic_kernel32_library - Module - Name: shared_buffer - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: BitSet - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DefaultElem - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: EnDecode - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: md5 - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: Directory - Dir: {Application}\Libraries\Directory - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: cDirectory. - Module - Name: StdBitmap - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdControlDef - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdFileSelect - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdIOBasic - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdIOCommon - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdId - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdKey - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdMenuDef - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdPSt - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdPicture - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdPictureDef - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdProcessAttribute - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdProcessDef - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdTimerDef - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdWindowDef - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: cast - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: commondef - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: device - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: deviceevents - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: devicefunctions - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: devicesystemstate - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: id - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: iostate - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: keyfocus - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: menuhandle - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: processhandle - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: processstack - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: receiverhandle - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: receivermessage - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: receivertable - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: roundrobin - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: scheduler - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: semidynamic - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: systemid - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: timerhandle - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: timertable - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: windowhandle - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: world - Dir: {Application}\Libraries\ObjectIO - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: clCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: util_121. - ObjectFile: cpicture_121. - ObjectFile: cdebug_121. - ObjectFile: cCrossCall_121. - ObjectFile: cCrossCallWindows_121. - ObjectFile: cCCallWindows_121. - ObjectFile: cCCallSystem_121. - Module - Name: clCrossCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: cCrossCallWindows_121. - ObjectFile: cCrossCallProcedureTable_121. - ObjectFile: cCrossCallCursor_121. - ObjectFile: cCrossCall_121. - ObjectFile: cCCallSystem_121. - ObjectFile: cCCallWindows_121. - ObjectFile: cAcceleratorTable_121. - NeededLibraries - Library: userExt_library - Library: gdiExt_library - Library: kernelExt_library - Library: winspool_library - Library: winmm_library - Library: shell32_library - Library: ole32_library - Library: kernel32_library - Library: comctl32_library - Library: advapi32_library - Module - Name: menuCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: cCrossCallMenus_121. - Module - Name: menuCrossCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osactivaterequests - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osbeep - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osbitmap - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osdocumentinterface - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: cCrossCallxDI_121. - Module - Name: osevent - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osfileselect - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: cCrossCallFileSelectors_121. - Module - Name: osfont - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osguishare - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: oskey - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osmenu - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osmouse - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: ospicture - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: osrgn - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: ossystem - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: ostime - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: ostoolbar - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: ostoolbox - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: cCrossCallFont_121. - Module - Name: ostypes - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: pictCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: rgnCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: windowCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: cpicture_121. - ObjectFile: cCCallWindows_121. - Module - Name: windowCrossCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdArray - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdBool - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdChar - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdCharList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdClass - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdEnum - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdEnv - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdFile - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdFunc - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdInt - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdMisc - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdOrdList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdOverloaded - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdReal - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdString - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdTuple - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemArray - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemEnum - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdArrayExtensions - Dir: {Application}\Libraries\StdLib - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdLibMisc - Dir: {Application}\Libraries\StdLib - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdMaybe - Dir: {Application}\Libraries\StdLib - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False diff --git a/fp2/week3/mart/GetallenRaden.prp b/fp2/week3/mart/GetallenRaden.prp deleted file mode 100644 index cc79889..0000000 --- a/fp2/week3/mart/GetallenRaden.prp +++ /dev/null @@ -1,543 +0,0 @@ -Version: 1.4 -MainModule - Name: GetallenRaden - Dir: {Project} - DclOpen: False - Icl - WindowPosition - X: 10 - Y: 10 - SizeX: 800 - SizeY: 600 - IclOpen: False -OtherModules - Module - Name: StdCleanTypes - Dir: {Application}\Libraries\Dynamics - DclOpen: False - IclOpen: False - Module - Name: StdDynamic - Dir: {Application}\Libraries\Dynamics - DclOpen: False - IclOpen: False - Module - Name: StdDynamicFileIO - Dir: {Application}\Libraries\Dynamics - DclOpen: False - IclOpen: False - Module - Name: DynID - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: DynIDMacros - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: DynamicUtilities - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicLowLevelInterface - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicTypes - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicVersion - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: _SystemDynamic - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: DynamicGraphConversion - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: DynamicLinkerInterface - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: memory - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: memory_mapped_files - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: shared_buffer - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: BitSet - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: DefaultElem - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: EnDecode - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: md5 - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: Directory - Dir: {Application}\Libraries\Directory - DclOpen: False - IclOpen: False - Module - Name: StdBitmap - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdControlDef - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdFileSelect - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdIOBasic - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdIOCommon - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdId - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdKey - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdMenuDef - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdPSt - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdPicture - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdPictureDef - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdProcessAttribute - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdProcessDef - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdTimerDef - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: StdWindowDef - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: cast - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: commondef - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: device - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: deviceevents - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: devicefunctions - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: devicesystemstate - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: id - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: iostate - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: keyfocus - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: menuhandle - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: processhandle - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: processstack - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: receiverhandle - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: receivermessage - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: receivertable - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: roundrobin - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: scheduler - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: semidynamic - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: systemid - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: timerhandle - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: timertable - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: windowhandle - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: world - Dir: {Application}\Libraries\ObjectIO - DclOpen: False - IclOpen: False - Module - Name: clCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: clCrossCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: menuCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: menuCrossCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osactivaterequests - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osbeep - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osbitmap - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osdocumentinterface - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osevent - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osfileselect - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osfont - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osguishare - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: oskey - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osmenu - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osmouse - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: ospicture - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: osrgn - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: ossystem - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: ostime - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: ostoolbar - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: ostoolbox - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: ostypes - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: pictCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: rgnCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: windowCCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: windowCrossCall_12 - Dir: {Application}\Libraries\ObjectIO\OS Windows - DclOpen: False - IclOpen: False - Module - Name: StdArray - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdBool - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdChar - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdCharList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdClass - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdEnum - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdEnv - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdFile - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdFunc - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdInt - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdMisc - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdOrdList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdOverloaded - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdReal - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdString - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdTuple - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: _SystemArray - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: _SystemEnum - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdArrayExtensions - Dir: {Application}\Libraries\StdLib - DclOpen: False - IclOpen: False - Module - Name: StdLibMisc - Dir: {Application}\Libraries\StdLib - DclOpen: False - IclOpen: False - Module - Name: StdMaybe - Dir: {Application}\Libraries\StdLib - DclOpen: False - IclOpen: False diff --git a/fp2/week3/mart/NotatieDynamics.icl b/fp2/week3/mart/NotatieDynamics.icl deleted file mode 100644 index da90675..0000000 --- a/fp2/week3/mart/NotatieDynamics.icl +++ /dev/null @@ -1,25 +0,0 @@ -module NotatieDynamics - -import StdEnv -import StdDynamic, StdDynamicFileIO - -Start = f4 f3 - -f1 :: Int Int -> Int -f1 (x :: Int) y = x + y - -f2 :: Bool a a -> a -f2 (b :: Bool) (e1 :: a) (e2 :: a) = dynamic if b e1 e2 :: a - -f3 :: [Int] -f3 = dynamic map fib [1 ..] - -fib 0 = 1 -fib 1 = 1 -fib n = fib (n-1) + fib (n-2) - -f4 :: [Int] -> [Int] -f4 (xs :: [Int]) = take 10 xs - -f5 :: [Int] -> [Int] -f5 = f4 f3 diff --git a/fp2/week3/mart/StdDynSet.dcl b/fp2/week3/mart/StdDynSet.dcl deleted file mode 100644 index de9a9b7..0000000 --- a/fp2/week3/mart/StdDynSet.dcl +++ /dev/null @@ -1,24 +0,0 @@ -definition module StdDynSet - -import StdOverloaded - -class Set a | TC, ==, toString a - -:: Set - -instance zero Set -instance toString Set -instance == Set - -toSet :: a -> Set | Set a - -nrOfElts :: Set -> Int -isEmptySet :: Set -> Bool - -memberOfSet :: a Set -> Bool | Set a -isSubset :: Set Set -> Bool -isStrictSubset :: Set Set -> Bool - -union :: Set Set -> Set -intersection :: Set Set -> Set -without :: Set Set -> Set diff --git a/fp2/week3/mart/StdDynSet.icl b/fp2/week3/mart/StdDynSet.icl deleted file mode 100644 index 1202ce2..0000000 --- a/fp2/week3/mart/StdDynSet.icl +++ /dev/null @@ -1,54 +0,0 @@ -implementation module StdDynSet - -import StdEnv -import StdDynamic - -class Set a | TC, ==, toString a - -:: Set = Set [Dynamic] - -instance zero Set -where zero = Set [] - -instance toString Set -where toString (Set a) = abort "toString not implemented" - -instance == Set -where - (==) (Set []) (Set []) = True - (==) (Set []) _ = False - (==) _ (Set []) = False - -toSet :: a -> Set | Set a -toSet a = Set [dynamic a] - -nrOfElts :: Set -> Int -nrOfElts (Set a) = length a - -isEmptySet :: Set -> Bool -isEmptySet (Set []) = True -isEmptySet _ = False - -memberOfSet :: a Set -> Bool | Set a -memberOfSet _ (Set []) = False -memberOfSet x (Set [y:xs]) -| isEqual x y = True -| otherwise = memberOfSet x xs - -isSubset :: Set Set -> Bool -isSubset a b = abort "isSubset nog niet geimplementeerd.\n" - -isStrictSubset :: Set Set -> Bool -isStrictSubset a b = abort "isStrictSubset nog niet geimplementeerd.\n" - -union :: Set Set -> Set -union a b = abort "union nog niet geimplementeerd.\n" - -intersection :: Set Set -> Set -intersection a b = abort "intersection nog niet geimplementeerd.\n" - -without :: Set Set -> Set -without a b = abort "without nog niet geimplementeerd.\n" - -Start :: Set -Start = toSet 1 diff --git a/fp2/week3/mart/StdDynSet.prj b/fp2/week3/mart/StdDynSet.prj deleted file mode 100644 index 4328042..0000000 --- a/fp2/week3/mart/StdDynSet.prj +++ /dev/null @@ -1,569 +0,0 @@ -Version: 1.4 -Global - ProjectRoot: . - Built: True - Target: Experimental - Exec: {Project}\StdDynSet.exe - CodeGen - CheckStacks: False - CheckIndexes: True - Application - HeapSize: 2097152 - StackSize: 512000 - ExtraMemory: 81920 - IntialHeapSize: 204800 - HeapSizeMultiplier: 4096 - ShowExecutionTime: False - ShowGC: False - ShowStackSize: False - MarkingCollector: False - StandardRuntimeEnv: True - Profile - Memory: False - MemoryMinimumHeapSize: 0 - Time: False - Stack: False - Output - Output: ShowConstructors - Font: Courier - FontSize: 9 - WriteStdErr: False - Link - LinkMethod: Static - GenerateRelocations: False - GenerateLinkMap: False - LinkResources: False - ResourceSource: - GenerateDLL: False - ExportedNames: - Paths - Path: {Project} - Precompile: - Postlink: -MainModule - Name: StdDynSet - Dir: {Project} - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False -OtherModules - Module - Name: StdCleanTypes - Dir: {Application}\Libraries\Dynamics - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamic - Dir: {Application}\Libraries\Dynamics - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: BitSet - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DefaultElem - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: EnDecode - Dir: {Application}\Libraries\Dynamics\general - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynIDMacros - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicUtilities - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicLowLevelInterface - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicTypes - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdDynamicVersion - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemDynamic - Dir: {Application}\Libraries\Dynamics\implementation - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicGraphConversion - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: DynamicLinkerInterface - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: read_function.obj - Module - Name: memory - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: mem.obj - Module - Name: memory_mapped_files - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - NeededObjFiles - ObjectFile: low.obj - NeededLibraries - Library: StdDynamic_kernel32_library - Module - Name: shared_buffer - Dir: {Application}\Libraries\Dynamics\implementation\windows - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdArray - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdBool - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdChar - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdCharList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdClass - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdEnum - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdEnv - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdFile - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdFunc - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdInt - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdMisc - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdOrdList - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdOverloaded - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdReal - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdString - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdTuple - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemArray - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: _SystemEnum - Dir: {Application}\Libraries\StdEnv - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False - Module - Name: StdMaybe - Dir: {Application}\Libraries\StdLib - Compiler - NeverMemoryProfile: False - NeverTimeProfile: False - StrictnessAnalysis: True - ListTypes: StrictExportTypes - ListAttributes: True - Warnings: True - Verbose: True - ReadableABC: False - ReuseUniqueNodes: True - Fusion: False diff --git a/fp2/week3/mart/StdDynSet.prp b/fp2/week3/mart/StdDynSet.prp deleted file mode 100644 index f2a25e4..0000000 --- a/fp2/week3/mart/StdDynSet.prp +++ /dev/null @@ -1,193 +0,0 @@ -Version: 1.4 -MainModule - Name: StdDynSet - Dir: {Project} - DclOpen: False - Icl - WindowPosition - X: 10 - Y: 10 - SizeX: 800 - SizeY: 600 - IclOpen: False -OtherModules - Module - Name: StdCleanTypes - Dir: {Application}\Libraries\Dynamics - DclOpen: False - IclOpen: False - Module - Name: StdDynamic - Dir: {Application}\Libraries\Dynamics - DclOpen: False - IclOpen: False - Module - Name: BitSet - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: DefaultElem - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: EnDecode - Dir: {Application}\Libraries\Dynamics\general - DclOpen: False - IclOpen: False - Module - Name: DynIDMacros - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: DynamicUtilities - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicLowLevelInterface - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicTypes - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: StdDynamicVersion - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: _SystemDynamic - Dir: {Application}\Libraries\Dynamics\implementation - DclOpen: False - IclOpen: False - Module - Name: DynamicGraphConversion - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: DynamicLinkerInterface - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: memory - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: memory_mapped_files - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: shared_buffer - Dir: {Application}\Libraries\Dynamics\implementation\windows - DclOpen: False - IclOpen: False - Module - Name: StdArray - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdBool - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdChar - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdCharList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdClass - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdEnum - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdEnv - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdFile - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdFunc - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdInt - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdMisc - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdOrdList - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdOverloaded - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdReal - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdString - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdTuple - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: _SystemArray - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: _SystemEnum - Dir: {Application}\Libraries\StdEnv - DclOpen: False - IclOpen: False - Module - Name: StdMaybe - Dir: {Application}\Libraries\StdLib - DclOpen: False - IclOpen: False diff --git a/fp2/week3/mart/fib.dyn b/fp2/week3/mart/fib.dyn deleted file mode 100644 index 8b8335a..0000000 --- a/fp2/week3/mart/fib.dyn +++ /dev/null @@ -1 +0,0 @@ -0a49c9db651c81d64bfc61520d7cfd6b diff --git a/fp2/week3/week3.tar.gz b/fp2/week3/week3.tar.gz deleted file mode 100644 index 84c7697..0000000 Binary files a/fp2/week3/week3.tar.gz and /dev/null differ diff --git a/fp2/week45/camil/RefactorX.dcl b/fp2/week45/camil/RefactorX.dcl deleted file mode 100644 index 3ddc8a4..0000000 --- a/fp2/week45/camil/RefactorX.dcl +++ /dev/null @@ -1,18 +0,0 @@ -definition module RefactorX - -import StdEnv - -:: Expr = NR Int - | VAR Name - | OP Expr Operator Expr - | LET Name Expr Expr -:: Name :== String -:: Operator = PLUS | MIN | MUL | DIV -:: Val = Result Int | Undef - -from StdClass import class toString - -instance toString Expr -free :: Expr -> [Name] -remove_unused_lets :: Expr -> Expr -eval :: Expr -> Val diff --git a/fp2/week45/camil/RefactorX.icl b/fp2/week45/camil/RefactorX.icl deleted file mode 100644 index a7bf909..0000000 --- a/fp2/week45/camil/RefactorX.icl +++ /dev/null @@ -1,82 +0,0 @@ -implementation module RefactorX - -import StdEnv - -Start = map eval [E1,E2,E3,E4,E5] - -E1 = OP (LET "x" (OP (NR 42) MIN (NR 3)) (OP (VAR "x") DIV (NR 0))) - PLUS - (LET "y" (NR 6) (OP (VAR "y") MUL (VAR "y"))) -E2 = LET "x" (NR 42) (OP (VAR "x") PLUS (LET "x" (NR 58) (VAR "x"))) -E3 = LET "x" (NR 1) (LET "y" (NR 2) (LET "x" (NR 3) (NR 4))) -E4 = LET "x" (NR 1) (OP (VAR "x") PLUS (VAR "y")) -E5 = OP (LET "x" (NR 1) (VAR "x")) MUL (VAR "x") - -:: Expr = NR Int - | VAR Name - | OP Expr Operator Expr - | LET Name Expr Expr -:: Name :== String -:: Operator = PLUS | MIN | MUL | DIV -:: Val = Result Int | Undef - -(<+) infixl 9 :: String a -> String | toString a -(<+) str a = str +++ toString a - -instance toString Operator where - toString PLUS = "+" - toString MIN = "-" - toString MUL = "*" - toString DIV = "/" - -// expressies afdrukken: -instance toString Expr where - toString (NR n) = toString n - toString (VAR s) = s - toString (LET s e1 e2) = "let " <+ s <+ " = " <+ e1 <+ " in " <+ e2 - toString (OP e1 o e2) = bracket e1 <+ o <+ bracket e2 - where - bracket :: Expr -> String - bracket (OP e1 o e2) = "(" <+ e1 <+ o <+ e2 <+ ")" - bracket (LET s e1 e2) = "(" <+ (LET s e1 e2) <+ ")" - bracket x = toString x - -// vrije variabelen: -free :: Expr -> [Name] -free (NR _) = [] -free (VAR s) = [s] -free (LET s _ e2) = [n \\ n <- free e2 | n <> s] -free (OP e1 _ e2) = removeDup ((free e1) ++ (free e2)) - -// verwijder deelexpressies met ongebruikte let-variabelen: -remove_unused_lets :: Expr -> Expr -remove_unused_lets (LET s e1 e2) -| isMember s (free e2) = (LET s (remove_unused_lets e1) (remove_unused_lets e2)) -| otherwise = remove_unused_lets e2 -remove_unused_lets (OP e1 o e2) = OP (remove_unused_lets e1) o (remove_unused_lets e2) -remove_unused_lets x = x - -// evaluator met tabel van naam-waarde paren: -eval :: Expr -> Val -eval e = eval` e [] -where - eval` :: Expr [(Name, Val)] -> Val - eval` (NR n) vs = Result n - eval` (VAR s) vs = find s vs - where - find :: Name [(Name, Val)] -> Val - find _ [] = Undef - find s [(t,v):vs] - | s == t = v - | otherwise = find s vs - eval` (LET s e1 e2) vs = eval` e2 [(s,eval` e1 vs):vs] - eval` (OP e1 o e2) vs = op o (eval` e1 vs) (eval` e2 vs) - where - op :: Operator Val Val -> Val - op _ Undef _ = Undef - op _ _ Undef = Undef - op PLUS (Result x) (Result y) = Result (x + y) - op MIN (Result x) (Result y) = Result (x - y) - op MUL (Result x) (Result y) = Result (x * y) - op DIV _ (Result 0) = Undef - op DIV (Result x) (Result y) = Result (x / y) diff --git a/fp2/week45/mart/RefactorX.dcl b/fp2/week45/mart/RefactorX.dcl deleted file mode 100644 index 393c097..0000000 --- a/fp2/week45/mart/RefactorX.dcl +++ /dev/null @@ -1,17 +0,0 @@ -// Mart Lubbers s4109503, Camil Staps s4498062 - -definition module RefactorX - -from StdClass import class toString -import StdEnv - -:: Expr = NR Int | VAR Name | OP Expr Operator Expr | LET Name Expr Expr -:: Name :== String -:: Operator = PLUS | MIN | MUL | DIV -:: Val = Result Int | Undef - - -instance toString Expr -free :: Expr -> [Name] -remove_unused_lets :: Expr -> Expr -eval :: Expr -> Val diff --git a/fp2/week45/mart/RefactorX.icl b/fp2/week45/mart/RefactorX.icl deleted file mode 100644 index c74df08..0000000 --- a/fp2/week45/mart/RefactorX.icl +++ /dev/null @@ -1,72 +0,0 @@ -// Mart Lubbers s4109503, Camil Staps s4498062 - -implementation module RefactorX - -import StdEnv - -//Start = map toString [E1,E2,E3,E4,E5] -//Start = map free [E1,E2,E3,E4,E5] -//Start = map toString (map remove_unused_lets [E1,E2,E3,E4,E5]) -Start = map eval [E1,E2,E3,E4,E5] - where - E1 = OP (LET "x" (OP (NR 42) MIN (NR 3)) (OP (VAR "x") DIV (NR 0))) PLUS (LET "y" (NR 6) (OP (VAR "y") MUL (VAR "y"))) - E2 = LET "x" (NR 42) (OP (VAR "x") PLUS (LET "x" (NR 58) (VAR "x"))) - E3 = LET "x" (NR 1) (LET "y" (NR 2) (LET "x" (NR 3) (NR 4))) - E4 = LET "x" (NR 1) (OP (VAR "x") PLUS (VAR "y")) - E5 = OP (LET "x" (NR 1) (VAR "x")) MUL (VAR "x") - -(<+) infixl 9 :: String a -> String | toString a -(<+) str a = str +++ toString a - -instance toString Operator where - toString PLUS = "+" - toString MIN = "-" - toString MUL = "*" - toString DIV = "/" - -instance toString Expr where - toString (NR n) = toString n - toString (VAR v) = v - toString (LET n e1 e2) = "(let " <+ n <+ "=" <+ e1 <+ " in " <+ e2 <+ ")" - toString (OP e1 o e2) = bracket e1 <+ o <+ bracket e2 - where - bracket :: Expr -> String - bracket (OP e1 o e2) = "(" <+ (OP e1 o e2) <+ ")" - bracket e = toString e - -free:: Expr -> [Name] -free (NR n) = [] -free (VAR v) = [v] -free (OP e1 o e2) = removeDup (free e1 ++ free e2) -free (LET n e1 e2) = removeMember n (free e2) - -remove_unused_lets:: Expr -> Expr -remove_unused_lets (LET n e1 e2) -| isMember n (free e2) = (LET n (remove_unused_lets e1) (remove_unused_lets e2)) -| otherwise = remove_unused_lets e2 -remove_unused_lets (OP e1 o e2) = (OP (remove_unused_lets e1) o (remove_unused_lets e2)) -remove_unused_lets e = e - -apply:: Operator Val Val -> Val -apply _ Undef _ = Undef -apply _ _ Undef = Undef -apply DIV _ (Result 0) = Undef -apply o (Result e1) (Result e2) = Result (apply` o e1 e2) - where - apply`:: Operator -> Int Int -> Int - apply` PLUS = + - apply` MIN = - - apply` MUL = * - apply` DIV = / - -eval:: Expr -> Val -eval e = eval` e [] - where - eval`:: Expr [(Name, Val)] -> Val - eval` (NR n) _ = Result n - eval` (VAR v) [] = Undef - eval` (VAR v) [(n, e):xs] - | v == n = e - | otherwise = eval` (VAR v) xs - eval` (OP e1 o e2) xs = apply o (eval` e1 xs) (eval` e2 xs) - eval` (LET n e1 e2) xs = eval` e2 [(n, eval` e1 xs):xs] diff --git a/fp2/week45/week45.tar.gz b/fp2/week45/week45.tar.gz deleted file mode 100644 index 690e838..0000000 Binary files a/fp2/week45/week45.tar.gz and /dev/null differ diff --git a/fp2/week6/camil/BinSearchTree.dcl b/fp2/week6/camil/BinSearchTree.dcl deleted file mode 100644 index 8b2ab3a..0000000 --- a/fp2/week6/camil/BinSearchTree.dcl +++ /dev/null @@ -1,8 +0,0 @@ -definition module BinSearchTree - -import StdClass -import BinTree - -is_geordend :: (BTree a) -> Bool | Ord a // meest algemene type -is_gebalanceerd :: (BTree a) -> Bool | Ord a // meest algemene type -insertTree :: a (BTree a) -> BTree a | Ord a \ No newline at end of file diff --git a/fp2/week6/camil/BinSearchTree.icl b/fp2/week6/camil/BinSearchTree.icl deleted file mode 100644 index 83ca73b..0000000 --- a/fp2/week6/camil/BinSearchTree.icl +++ /dev/null @@ -1,49 +0,0 @@ -// Mart Lubbers, s4109503 -// Camil Staps, s4498062 - -implementation module BinSearchTree - -import StdEnv -import BinTree - -insertTree :: a (BTree a) -> BTree a | Ord a -insertTree e BLeaf = BNode e BLeaf BLeaf -insertTree e (BNode x le ri) -| e <= x = BNode x (insertTree e le) ri -| e > x = BNode x le (insertTree e ri) - -deleteTree :: a (BTree a) -> (BTree a) | Eq, Ord a -deleteTree e BLeaf = BLeaf -deleteTree e (BNode x le ri) -| e < x = BNode x (deleteTree e le) ri -| e == x = join le ri -| e > x = BNode x le (deleteTree e ri) -where - join :: (BTree a) (BTree a) -> (BTree a) - join BLeaf b2 = b2 - join b1 b2 = BNode x b1` b2 - where - (x,b1`) = largest b1 - - largest :: (BTree a) -> (a,(BTree a)) - largest (BNode x b1 BLeaf) = (x,b1) - largest (BNode x b1 b2) = (y,BNode x b1 b2`) - where - (y,b2`) = largest b2 - - -is_geordend :: (BTree a) -> Bool | Ord a // meest algemene type -is_geordend BLeaf = True -is_geordend (BNode x le ri) = (foldr (&&) True (map ((>) x) (members le))) && (foldr (&&) True (map ((<=) x) (members ri))) && is_geordend le && is_geordend ri -where - members :: (BTree a) -> [a] - members BLeaf = [] - members (BNode x le ri) = [x:(members le) ++ (members ri)] - -is_gebalanceerd :: (BTree a) -> Bool | Ord a // meest algemene type -is_gebalanceerd BLeaf = True -is_gebalanceerd (BNode x le ri) = abs ((depth le) - (depth ri)) <= 1 && is_gebalanceerd le && is_gebalanceerd ri -where - depth :: (BTree a) -> Int - depth BLeaf = 0 - depth (BNode x le ri) = max (depth le) (depth ri) + 1 \ No newline at end of file diff --git a/fp2/week6/camil/BinSearchTreeImage.icl b/fp2/week6/camil/BinSearchTreeImage.icl deleted file mode 100644 index 00ae8b1..0000000 --- a/fp2/week6/camil/BinSearchTreeImage.icl +++ /dev/null @@ -1,75 +0,0 @@ -module BinSearchTreeImage - -/* Instructions: - -(1) copy BinTree.(i/d)cl and BinSearchTree.(i/d)cl from Practicum to - {iTasks-SDK}\Experiments\SVG_tests\ - -(2) in these modules change the type - - :: Tree a = Node a (Tree a) (Tree a) | Leaf - - to - - :: BTree a = BLeaf | BNode a (BTree a) (BTree a) // ORDER OF DATACONSTRUCTORS IS ESSENTIAL!! - - and adapt the corresponding function definitions. - -(3) this main file (BinSearchTreeImage.icl) must be in the same folder: - {iTasks-SDK}\Experiments\SVG_tests\ - -(4) create a new project and set de environment to 'iTasks' - -(5) Bring-Up-To-Date and start generated application - -(6) Open a browser and navigate to localhost. - The application creates two tasks: - (a) The task on the left allows you to enter subsequent elements that are inserted in the tree, one after another. - (b) The task on the right must be finished by you by writing the function treeImage. This function must render the tree structure in such a way - that Nodes of the same depth have the same y-coordinate, and the root having the smallest y-coordinate. -*/ - -import iTasks // de algemene iTask API -import iTasks.API.Extensions.SVG.SVGlet // specialiseer task editors -from StdFunc import flip - -import BinSearchTree // type definition of Tree and sample trees z0 .. z8 -derive class iTask BTree - -Start :: *World -> *World -Start world = startEngine [publish "/" (WebApp []) (\_ -> task)] world - -task :: Task [Int] -task = withShared [] (\sharedList -> - ( (updateSharedInformation (Title "Edit list") [] sharedList <<@ ArrangeHorizontal) - -||- - (viewSharedInformation (Title "Tree view") [imageView treeImage` (\_ _ -> Nothing)] sharedList <<@ ArrangeHorizontal) - ) <<@ ArrangeHorizontal - ) <<@ FullScreen - -font = normalFontDef "Courier New" fonthoogte -fonthoogte = 14.0 - -treeImage` :: [Int] *TagSource -> Image m -treeImage` nrs tags = fst(treeImage (foldl (flip insertTree) BLeaf nrs) tags) - -TMargin = 10.0 - -treeImage :: (BTree Int) *TagSource -> (Image m, *TagSource) -treeImage BLeaf ts = (margin (px zero, px TMargin) (circle (px fonthoogte)), ts) -treeImage (BNode x t1 t2) [(tg1, utg1),(tg2, utg2):ts] -= (above (repeat AtMiddleX) [] [textbox, lines, subtrees] Nothing, ts2) - where - (i1, ts1) = treeImage t1 ts - (i2, ts2) = treeImage t2 ts1 - subtrees = beside (repeat AtTop) [] [tag utg1 i1, tag utg2 i2] Nothing - box = rect (textxspan font (toString x)) (px fonthoogte) <@< {fill=toSVGColor "none"} - lines_with_subtrees = above (repeat AtMiddleX) [] [lines, subtrees] Nothing - textbox = overlay (repeat (AtMiddleX, AtMiddleY)) [] [box, text font (toString x)] Nothing - lines = beside (repeat AtBottom) [] [ - empty (((imagexspan tg1) /. 2) - ((imagexspan tg2) /. 2)) (px TMargin), // ignored if negative - line Nothing Slash ((imagexspan tg2) /. 2) (px TMargin), - line Nothing Backslash ((imagexspan tg1) /. 2) (px TMargin), - empty (((imagexspan tg2) /. 2) - ((imagexspan tg1) /. 2)) (px TMargin)] // ignored if negative - Nothing - diff --git a/fp2/week6/camil/BinTree.dcl b/fp2/week6/camil/BinTree.dcl deleted file mode 100644 index e8b1700..0000000 --- a/fp2/week6/camil/BinTree.dcl +++ /dev/null @@ -1,16 +0,0 @@ -definition module BinTree - -:: BTree a = BNode a (BTree a) (BTree a) | BLeaf - -t0 :: BTree Int -t1 :: BTree Int -t2 :: BTree Int -t3 :: BTree Int -t4 :: BTree Int -t5 :: BTree Int -t6 :: BTree Int -t7 :: BTree Int - -//nodes :: // meest algemene type -//leaves :: // meest algemene type -//diepte :: // meest algemene type diff --git a/fp2/week6/camil/BinTree.icl b/fp2/week6/camil/BinTree.icl deleted file mode 100644 index 0a16da5..0000000 --- a/fp2/week6/camil/BinTree.icl +++ /dev/null @@ -1,38 +0,0 @@ -implementation module BinTree - -import StdEnv - -:: BTree a = BNode a (BTree a) (BTree a) | BLeaf - -t0 :: BTree Int -t0 = BLeaf -t1 :: BTree Int -t1 = BNode 4 t0 t0 -t2 :: BTree Int -t2 = BNode 2 t0 t1 -t3 :: BTree Int -t3 = BNode 5 t2 t0 -t4 :: BTree Int -t4 = BNode 5 t2 t2 -t5 :: BTree Int -t5 = BNode 1 BLeaf (BNode 2 BLeaf (BNode 3 BLeaf (BNode 4 BLeaf BLeaf))) -t6 :: BTree Int -t6 = BNode 1 (BNode 2 (BNode 3 (BNode 4 BLeaf BLeaf) BLeaf) BLeaf) BLeaf -t7 :: BTree Int -t7 = BNode 4 (BNode 1 BLeaf BLeaf) (BNode 5 (BNode 2 BLeaf BLeaf) BLeaf) - -// 2. -//nodes :: // meest algemene type -//nodes ... - -//Start = map nodes [t0,t1,t2,t3,t4,t5,t6,t7] - -//leaves :: // meest algemene type -//leaves ... - -//Start = map leaves [t0,t1,t2,t3,t4,t5,t6,t7] - -//diepte :: // meest algemene type -//diepte ... - -//Start = map diepte [t0,t1,t2,t3,t4,t5,t6,t7] diff --git a/fp2/week6/mart/BinSearchTree.dcl b/fp2/week6/mart/BinSearchTree.dcl deleted file mode 100755 index 460dcf1..0000000 --- a/fp2/week6/mart/BinSearchTree.dcl +++ /dev/null @@ -1,8 +0,0 @@ -definition module BinSearchTree - -import StdClass -import BinTree - -is_geordend :: (BTree a) -> Bool | Ord a // meest algemene type -is_gebalanceerd :: (BTree a) -> Bool | Ord a // meest algemene type -insertTree :: a (BTree a) -> BTree a | Ord a \ No newline at end of file diff --git a/fp2/week6/mart/BinSearchTree.icl b/fp2/week6/mart/BinSearchTree.icl deleted file mode 100755 index 83ca73b..0000000 --- a/fp2/week6/mart/BinSearchTree.icl +++ /dev/null @@ -1,49 +0,0 @@ -// Mart Lubbers, s4109503 -// Camil Staps, s4498062 - -implementation module BinSearchTree - -import StdEnv -import BinTree - -insertTree :: a (BTree a) -> BTree a | Ord a -insertTree e BLeaf = BNode e BLeaf BLeaf -insertTree e (BNode x le ri) -| e <= x = BNode x (insertTree e le) ri -| e > x = BNode x le (insertTree e ri) - -deleteTree :: a (BTree a) -> (BTree a) | Eq, Ord a -deleteTree e BLeaf = BLeaf -deleteTree e (BNode x le ri) -| e < x = BNode x (deleteTree e le) ri -| e == x = join le ri -| e > x = BNode x le (deleteTree e ri) -where - join :: (BTree a) (BTree a) -> (BTree a) - join BLeaf b2 = b2 - join b1 b2 = BNode x b1` b2 - where - (x,b1`) = largest b1 - - largest :: (BTree a) -> (a,(BTree a)) - largest (BNode x b1 BLeaf) = (x,b1) - largest (BNode x b1 b2) = (y,BNode x b1 b2`) - where - (y,b2`) = largest b2 - - -is_geordend :: (BTree a) -> Bool | Ord a // meest algemene type -is_geordend BLeaf = True -is_geordend (BNode x le ri) = (foldr (&&) True (map ((>) x) (members le))) && (foldr (&&) True (map ((<=) x) (members ri))) && is_geordend le && is_geordend ri -where - members :: (BTree a) -> [a] - members BLeaf = [] - members (BNode x le ri) = [x:(members le) ++ (members ri)] - -is_gebalanceerd :: (BTree a) -> Bool | Ord a // meest algemene type -is_gebalanceerd BLeaf = True -is_gebalanceerd (BNode x le ri) = abs ((depth le) - (depth ri)) <= 1 && is_gebalanceerd le && is_gebalanceerd ri -where - depth :: (BTree a) -> Int - depth BLeaf = 0 - depth (BNode x le ri) = max (depth le) (depth ri) + 1 \ No newline at end of file diff --git a/fp2/week6/mart/BinSearchTreeImage.icl b/fp2/week6/mart/BinSearchTreeImage.icl deleted file mode 100755 index 9b93810..0000000 --- a/fp2/week6/mart/BinSearchTreeImage.icl +++ /dev/null @@ -1,71 +0,0 @@ -module BinSearchTreeImage - -/* Instructions: - -(1) copy BinTree.(i/d)cl and BinSearchTree.(i/d)cl from Practicum to - {iTasks-SDK}\Experiments\SVG_tests\ - -(2) in these modules change the type - - :: Tree a = Node a (Tree a) (Tree a) | Leaf - - to - - :: BTree a = BLeaf | BNode a (BTree a) (BTree a) // ORDER OF DATACONSTRUCTORS IS ESSENTIAL!! - - and adapt the corresponding function definitions. - -(3) this main file (BinSearchTreeImage.icl) must be in the same folder: - {iTasks-SDK}\Experiments\SVG_tests\ - -(4) create a new project and set de environment to 'iTasks' - -(5) Bring-Up-To-Date and start generated application - -(6) Open a browser and navigate to localhost. - The application creates two tasks: - (a) The task on the left allows you to enter subsequent elements that are inserted in the tree, one after another. - (b) The task on the right must be finished by you by writing the function treeImage. This function must render the tree structure in such a way - that Nodes of the same depth have the same y-coordinate, and the root having the smallest y-coordinate. -*/ - -import iTasks // de algemene iTask API -import iTasks.API.Extensions.SVG.SVGlet // specialiseer task editors -from StdFunc import flip - -import BinSearchTree // type definition of Tree and sample trees z0 .. z8 -derive class iTask BTree - -Start :: *World -> *World -Start world = startEngine [publish "/" (WebApp []) (\_ -> task)] world - -task :: Task [Int] -task = withShared [] (\sharedList -> - ( (updateSharedInformation (Title "Edit list") [] sharedList <<@ ArrangeHorizontal) - -||- - (viewSharedInformation (Title "Tree view") [imageView treeImage` (\_ _ -> Nothing)] sharedList <<@ ArrangeHorizontal) - ) <<@ ArrangeHorizontal - ) <<@ FullScreen - -font = normalFontDef "Courier New" fonthoogte -fonthoogte = 14.0 - -treeImage` :: [Int] *TagSource -> Image m -treeImage` nrs tags = fst(treeImage (foldl (flip insertTree) BLeaf nrs) tags) - -TMargin = 10.0 - -treeImage :: (BTree Int) *TagSource -> (Image m, *TagSource) -treeImage BLeaf ts = (margin (px TMargin) (circle (px fonthoogte)), ts) -treeImage (BNode x t1 t2) [(tg1, utg1),(tg2, utg2):ts] -= (above (repeat AtMiddleX) [] [textbox, lines, subtrees] Nothing, ts2) - where - (i1, ts1) = treeImage t1 ts - (i2, ts2) = treeImage t2 ts1 - subtrees = beside (repeat AtTop) [] [tag utg1 i1, tag utg2 i2] Nothing - box = rect (textxspan font (toString x)) (px fonthoogte) <@< {fill=toSVGColor "none"} - textbox = overlay (repeat (AtMiddleX, AtMiddleY)) [] [box, text font (toString x)] Nothing - lines = beside (repeat AtBottom) [] [ - line Nothing Slash ((imagexspan tg1) /. 2) (px TMargin), - line Nothing Backslash ((imagexspan tg2) /. 2) (px TMargin)] Nothing - diff --git a/fp2/week6/mart/BinTree.dcl b/fp2/week6/mart/BinTree.dcl deleted file mode 100755 index 93d8ed8..0000000 --- a/fp2/week6/mart/BinTree.dcl +++ /dev/null @@ -1,16 +0,0 @@ -definition module BinTree - -:: BTree a = BNode a (BTree a) (BTree a) | BLeaf - -t0 :: BTree Int -t1 :: BTree Int -t2 :: BTree Int -t3 :: BTree Int -t4 :: BTree Int -t5 :: BTree Int -t6 :: BTree Int -t7 :: BTree Int - -//nodes :: // meest algemene type -//leaves :: // meest algemene type -//diepte :: // meest algemene type diff --git a/fp2/week6/mart/BinTree.icl b/fp2/week6/mart/BinTree.icl deleted file mode 100755 index 7b14e1e..0000000 --- a/fp2/week6/mart/BinTree.icl +++ /dev/null @@ -1,38 +0,0 @@ -implementation module BinTree - -import StdEnv - -:: BTree a = BNode a (BTree a) (BTree a) | BLeaf - -t0 :: BTree Int -t0 = BLeaf -t1 :: BTree Int -t1 = BNode 4 t0 t0 -t2 :: BTree Int -t2 = BNode 2 t0 t1 -t3 :: BTree Int -t3 = BNode 5 t2 t0 -t4 :: BTree Int -t4 = BNode 5 t2 t2 -t5 :: BTree Int -t5 = BNode 1 BLeaf (BNode 2 BLeaf (BNode 3 BLeaf (BNode 4 BLeaf BLeaf))) -t6 :: BTree Int -t6 = BNode 1 (BNode 2 (BNode 3 (BNode 4 BLeaf BLeaf) BLeaf) BLeaf) BLeaf -t7 :: BTree Int -t7 = BNode 4 (BNode 1 BLeaf BLeaf) (BNode 5 (BNode 2 BLeaf BLeaf) BLeaf) - -// 2. -//nodes :: // meest algemene type -//nodes ... - -//Start = map nodes [t0,t1,t2,t3,t4,t5,t6,t7] - -//leaves :: // meest algemene type -//leaves ... - -//Start = map leaves [t0,t1,t2,t3,t4,t5,t6,t7] - -//diepte :: // meest algemene type -//diepte ... - -//Start = map diepte [t0,t1,t2,t3,t4,t5,t6,t7] -- cgit v1.2.3