From 304d944679fe56baea223255827f4693517f8e98 Mon Sep 17 00:00:00 2001 From: Gregory Date: Thu, 4 Jun 2020 03:02:24 +0300 Subject: [PATCH] all week2's main funs are done --- sml/week2/assignment.pdf | Bin 0 -> 113611 bytes sml/week2/card.sml | 83 +++++++++++++++ sml/week2/card_tests.sml | 212 +++++++++++++++++++++++++++++++++++++++ sml/week2/list.sml | 31 ++++++ sml/week2/name.sml | 70 +++++++++++++ sml/week2/name_tests.sml | 96 ++++++++++++++++++ sml/week2/operators.sml | 21 ++++ sml/week2/test.sml | 17 ++++ 8 files changed, 530 insertions(+) create mode 100644 sml/week2/assignment.pdf create mode 100644 sml/week2/card.sml create mode 100644 sml/week2/card_tests.sml create mode 100644 sml/week2/list.sml create mode 100644 sml/week2/name.sml create mode 100644 sml/week2/name_tests.sml create mode 100644 sml/week2/operators.sml create mode 100644 sml/week2/test.sml diff --git a/sml/week2/assignment.pdf b/sml/week2/assignment.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9cf177f80853f744abc1c95b19c863d377a26aec GIT binary patch literal 113611 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 s;)cQ`U{D@7H color +val card_color: card_color = fn card => + case card of + (Club, _) => Black + | (Spade, _) => Black + | (Diamond, _) => Red + | (Heart, _) => Red + +type card_value = card -> int +val card_value: card_value = fn (_, rank) => + case rank of + Num num => num + | Ace => 11 + | _ => 10 + +type remove_card = card list * card * exn -> card list +val remove_card: remove_card = fn (cards, to_remove, exp) => + let + fun filter card (found, acc) = + if card <> to_remove orelse found + then (found, card :: acc) + else (true orelse found, acc) + in + case fold filter (false, []) cards of + (true, filtered) => filtered + | (false, _) => raise exp + end + +type all_same_color = card list -> bool +val rec all_same_color: all_same_color = fn cards => + case cards of + [] => true + | one :: [] => true + | first :: second :: rest => + card_color first = card_color second andalso all_same_color rest + +type sum_cards = card list -> int +val sum_cards: sum_cards = fn cards => + cards |> fold (fn card => fn sum => card_value card + sum) 0 + +type score = card list * int -> int +val score: score = fn (cards, goal) => + let + val sum = sum_cards cards + val preliminary_score = + if sum < goal + then goal - sum + else 3 * (sum - goal) + val same_color = all_same_color cards + in + if same_color then preliminary_score div 2 else preliminary_score + end + +type officiate = card list * move list * int -> int +val officiate: officiate = fn (deck, moves, goal) => + let + fun draw (deck, hand) = + case deck of + [] => (deck, hand) + | head :: tail => + if sum_cards hand > goal + then (deck, hand) + else (tail, head :: hand) + + fun play move (deck, hand) = + case move of + Draw => draw (deck, hand) + | Discard card => (deck, remove_card (hand, card, IllegalMove)) + + fun round hand = score (hand, goal) + in + moves |> fold play (deck, []) |> #2 |> round + end \ No newline at end of file diff --git a/sml/week2/card_tests.sml b/sml/week2/card_tests.sml new file mode 100644 index 0000000..42da0f1 --- /dev/null +++ b/sml/week2/card_tests.sml @@ -0,0 +1,212 @@ +use "test.sml"; +use "card.sml"; + +val () = + assert (card_color (Spade, King) = Black) + "card_color: returns right color" + +val () = + assert (card_color (Heart, King) = Red) + "card_color: returns right color x2" + +val () = + assert (card_value (Heart, Num 5) = 5) + "card_value: number card" + +val () = + assert (card_value (Heart, Ace) = 11) + "card_value: ace is 11" + +val () = + assert (card_value (Heart, Jack) = 10) + "card_value: jack is 10" + +val () = + assert (remove_card ([(Heart, Jack)], (Heart, Jack), IllegalMove) = []) + "remove_card: removes card" + +val () = + let + val deck = [(Heart, Jack), (Heart, Jack)] + val card = (Heart, Jack) + val expected = [(Heart, Jack)] + val exp = IllegalMove + in + assert + (remove_card (deck, card, exp) = expected) + "remove_card: leaves duplicates" + end + +val _ = + let + val deck = [] + val card = (Heart, Jack) + val expected = IllegalMove + val exp = IllegalMove + in + remove_card (deck, card, exp) + handle IllegalMove => + let + val () = assert true "remove_card: raises exception" + in + [] + end + end + +val () = + let + val deck = [] + val expected = true + in + assert + $ all_same_color deck = expected + $ "all_same_color: true on empty list" + end + +val () = + let + val deck = [(Club, Jack)] + val expected = true + in + assert + $ all_same_color deck = expected + $ "all_same_color: true on one value" + end + +val () = + let + val deck = [(Club, Jack), (Diamond, Jack)] + val expected = false + in + assert + $ all_same_color deck = expected + $ "all_same_color: false on two different colors" + end + +val () = + let + val deck = [] + val expected = 0 + in + assert + $ sum_cards deck = expected + $ "sum_cards: zero on empty list" + end + +val () = + let + val deck = [(Club, Jack), (Diamond, Ace)] + val expected = 21 + in + assert + $ sum_cards deck = expected + $ "sum_cards: correct sum" + end + +val () = + let + val deck = [] + val goal = 20 + val expected = 10 + in + assert + $ score (deck, goal) = expected + $ "score: empty list returns goal / 2 because empty deck = same color" + end + +val () = + let + val deck = [(Club, Jack), (Diamond, Jack)] + val goal = 21 + val expected = 1 + in + assert + $ score (deck, goal) = expected + $ "score: when sum < goal then score = goal - sum" + end + +val () = + let + val deck = [(Club, Jack), (Diamond, Jack)] + val goal = 9 + val expected = 33 + in + assert + $ score (deck, goal) = expected + $ "score: when sum > goal then score = 3 * (sum - goal)" + end + +val () = + let + val deck = [(Club, Jack), (Club, Ace)] + val goal = 18 + val expected = 4 + in + assert + $ score (deck, goal) = expected + $ "score: when all cards are the same color score is divied by 2" + end + +val () = + let + val deck = [(Club, Jack), (Club, Ace)] + val moves = [Draw, Draw] + val goal = 18 + val expected = 4 + in + assert + $ officiate (deck, moves, goal) = expected + $ "officiate: player draw all deck, get correct result" + end + + +val () = + let + val deck = [(Club, Jack)] + val moves = [Draw, Draw] + val goal = 21 + val expected = 5 + in + assert + $ officiate (deck, moves, goal) = expected + $ "officiate: game stops on empty deck even if there are moves" + end + +val () = + let + val deck = [(Club, Jack), (Club, Num 3), (Club, Num 10), (Club, Jack)] + val moves = [Draw, Draw, Draw, Draw] + val goal = 19 + val expected = 6 + in + assert + $ officiate (deck, moves, goal) = expected + $ "officiate: game stops on sum > goal" + end + +val () = + let + val deck = [(Club, Jack), (Club, Num 3), (Heart, Num 10), (Club, Jack)] + val moves = [Draw, Discard (Club, Jack), Draw, Draw] + val goal = 19 + val expected = 6 + in + assert + $ officiate (deck, moves, goal) = expected + $ "officiate: player can discard cards" + end + +val 0 = + let + val deck = [(Club, Jack), (Club, Num 3), (Heart, Num 10), (Club, Jack)] + val moves = [Discard (Club, Jack), Draw, Draw, Draw] + val goal = 19 + val expected = 6 + in + officiate (deck, moves, goal) + handle IllegalMove => + assert true "officiate: raises exception on missing card" + |> (fn _ => 0) + end + +val () = complete () \ No newline at end of file diff --git a/sml/week2/list.sml b/sml/week2/list.sml new file mode 100644 index 0000000..d13eb34 --- /dev/null +++ b/sml/week2/list.sml @@ -0,0 +1,31 @@ +use "operators.sml"; + +fun cons head tail = head :: tail + +fun fold f acc lst = + case lst of + [] => acc + | head :: tail => fold f (f head acc) tail + +fun reverse lst = + let + fun f elm acc = elm :: acc + in + fold f [] lst + end + +fun filter predicate lst = + let + fun f elm acc = if predicate elm then elm :: acc else acc + in + lst |> fold f [] |> reverse + end + +fun empty lst = lst = [] + +(* not efficient but works *) +fun exists elem lst = + lst + |> filter (fn needle => elem = needle) + |> empty + |> not \ No newline at end of file diff --git a/sml/week2/name.sml b/sml/week2/name.sml new file mode 100644 index 0000000..879612a --- /dev/null +++ b/sml/week2/name.sml @@ -0,0 +1,70 @@ +use "operators.sml"; +use "list.sml"; + +type FullName = {first: string, middle: string, last: string} + +(* too complex *) +fun all_except_option (str, lst) = + if exists str lst + then SOME $ filter (fn elem => elem <> str) lst + else NONE + +(* more straightforward *) +fun all_except_option (str, lst) = + let + val filtered = filter (fn elem => elem <> str) lst + in + if lst = filtered then NONE else SOME filtered + end + +(* maybe it's what assigment requires us to do but I don't like it *) +(* how to get it in 8 lines?! *) +fun all_except_option (str, lst) = + let + fun filter (same_lst, acc) lst = + case lst of + [] => (same_lst, acc) + | head :: tail => + if head = str + then filter (false andalso same_lst, acc) tail + else filter (same_lst, head :: acc) tail + in + case filter (true, []) lst of + (false, lst) => SOME $ reverse lst + | (true, _) => NONE + end + +fun get_substitutions1 ( + substitutions: string list list, + name: string +): string list = + let + fun collect lst acc = + case all_except_option (name, lst) of + NONE => acc + | SOME names => acc @ names + in + fold collect [] substitutions + end + +(* lol, previous function is already tail recursive 😎 *) +fun get_substitutions2 ( + substitutions: string list list, + name: string +): string list = get_substitutions1(substitutions, name) + + +fun similar_names ( + substitutions: string list list, + {first=first, middle=middle, last=last}: FullName +): FullName list = + let + fun full_substitution name acc = + {first=name, middle=middle, last=last} :: acc + in + get_substitutions1 (substitutions, first) + |> fold full_substitution [] + |> reverse + |> cons {first=first, middle=middle, last=last} + end + \ No newline at end of file diff --git a/sml/week2/name_tests.sml b/sml/week2/name_tests.sml new file mode 100644 index 0000000..e54eef2 --- /dev/null +++ b/sml/week2/name_tests.sml @@ -0,0 +1,96 @@ +use "name.sml"; +use "test.sml"; + +val () = + assert + (all_except_option ("str", []) = NONE) + "all_except_option: NONE on empty list" + +val () = + assert + (all_except_option ("str", ["str"]) = SOME []) + "all_except_option: filters out matched string" + +val () = + assert + (all_except_option ("str", ["str", "bar"]) = SOME ["bar"]) + "all_except_option: filters only necessary elements" + +val () = + assert + (all_except_option ("str", ["str", "bar", "str"]) = SOME ["bar"]) + "all_except_option: filters all matches" + +val () = + assert + (all_except_option ("str", ["str", "bar", "baz"]) = SOME ["bar", "baz"]) + "all_except_option: preserve order" + +val () = + let + val substitutions = [ + ["Fred","Fredrick"], + ["Elizabeth","Betty"], + ["Freddie","Fred","F"] + ] + val name = "Fred" + val expect = ["Fredrick","Freddie","F"] + in + assert + (get_substitutions1 (substitutions, name) = expect) + "get_substitutions1: collects substitutions" + end + +val () = + let + val substitutions = [ + ["Fred","Fredrick"], + ["Jeff","Jeffrey"], + ["Geoff","Jeff","Jeffrey"] + ] + val name = "Jeff" + val expect = ["Jeffrey","Geoff","Jeffrey"] + in + assert + (get_substitutions1 (substitutions, name) = expect) + "get_substitutions1: collect duplicates" + end + +val () = + let + val substitutions = [ + ["Fred","Fredrick"], + ["Jeff","Jeffrey"], + ["Geoff","Jeff","Jeffrey"] + ] + val name = "Jeff" + val expect = ["Jeffrey","Geoff","Jeffrey"] + val res1 = get_substitutions1 (substitutions, name) + val res2 = get_substitutions2 (substitutions, name) + in + assert + (res1 = res2) + "get_substitutions2: works as previous one" + end + +val () = + let + val substitutions = [ + ["Fred","Fredrick"], + ["Elizabeth","Betty"], + ["Freddie","Fred","F"] + ] + val full_name = {first="Fred", middle="W", last="Smith"} + val expect = [ + {first="Fred", last="Smith", middle="W"}, + {first="Fredrick", last="Smith", middle="W"}, + {first="Freddie", last="Smith", middle="W"}, + {first="F", last="Smith", middle="W"} + ] + in + assert + (similar_names (substitutions, full_name) = expect) + "similar_names: creates correct list" + end + +val () = complete () \ No newline at end of file diff --git a/sml/week2/operators.sml b/sml/week2/operators.sml new file mode 100644 index 0000000..0d3e6b1 --- /dev/null +++ b/sml/week2/operators.sml @@ -0,0 +1,21 @@ +(* + Pipe operator. + Simply to write code like "data |> fun" instead "fun data". + Then you can "pipe" results to functions via partial application: + + fun square a b = a * b + fun sum a b = a + b + + 10 |> sum 10 |> square 2 // 40 +*) +fun |> (x, f) = f x + +(* apply operator *) +fun $ (f, x) = f x + +(* composition operator *) +fun >> (f, g) x = g(f(x)) + +infix |> +infix $ +infix >> \ No newline at end of file diff --git a/sml/week2/test.sml b/sml/week2/test.sml new file mode 100644 index 0000000..8a4f8d4 --- /dev/null +++ b/sml/week2/test.sml @@ -0,0 +1,17 @@ +fun assert condition message = + if condition + then + print (message ^ "\n") + else + let + val () = print ("Assert error: " ^ message ^ "\n") + in + OS.Process.exit OS.Process.failure + end + +fun complete () = + let + val () = print "All tests passed!" + in + OS.Process.exit OS.Process.success + end \ No newline at end of file