From 2668a05427502f1aa41dcd65fb8e5309b3202acf Mon Sep 17 00:00:00 2001 From: Jesus Zambrano Date: Fri, 28 Aug 2015 21:49:56 -0400 Subject: [PATCH] Equalities and Lists koans --- src/koans/01_equalities.clj | 22 +++++++++++----------- src/koans/02_lists.clj | 24 ++++++++++++------------ 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/src/koans/01_equalities.clj b/src/koans/01_equalities.clj index 8f76176..85fc995 100644 --- a/src/koans/01_equalities.clj +++ b/src/koans/01_equalities.clj @@ -3,34 +3,34 @@ (meditations "We shall contemplate truth by testing reality, via equality" - (= __ true) + (= true true) "To understand reality, we must compare our expectations against reality" - (= __ (+ 1 1)) + (= 2 (+ 1 1)) "You can test equality of many things" - (= (+ 3 4) 7 (+ 2 __)) + (= (+ 3 4) 7 (+ 2 5)) "Some things may appear different, but be the same" - (= __ (= 2 2/1)) + (= true (= 2 2/1)) "You cannot generally float to heavens of integers" - (= __ (= 2 2.0)) + (= false (= 2 2.0)) "But a looser equality is also possible" - (= __ (== 2.0 2)) + (= true (== 2.0 2)) "Something is not equal to nothing" - (= __ (not (= 1 nil))) + (= true (not (= 1 nil))) "Strings, and keywords, and symbols: oh my!" - (= __ (= "hello" :hello 'hello)) + (= false (= "hello" :hello 'hello)) "Make a keyword with your keyboard" - (= :hello (keyword __)) + (= :hello (keyword :hello)) "Symbolism is all around us" - (= 'hello (symbol __)) + (= 'hello (symbol 'hello)) "When things cannot be equal, they must be different" - (not= :fill-in-the-blank __)) + (not= :fill-in-the-blank "fill-in-the-blank")) diff --git a/src/koans/02_lists.clj b/src/koans/02_lists.clj index 8cdce7f..79a2653 100644 --- a/src/koans/02_lists.clj +++ b/src/koans/02_lists.clj @@ -3,43 +3,43 @@ (meditations "Lists can be expressed by function or a quoted form" - (= '(__ __ __ __ __) (list 1 2 3 4 5)) + (= '(1 2 3 4 5) (list 1 2 3 4 5)) "They are Clojure seqs (sequences), so they allow access to the first" - (= __ (first '(1 2 3 4 5))) + (= 1 (first '(1 2 3 4 5))) "As well as the rest" - (= __ (rest '(1 2 3 4 5))) + (= '(2 3 4 5) (rest '(1 2 3 4 5))) "Count your blessings" - (= __ (count '(dracula dooku chocula))) + (= 3 (count '(dracula dooku chocula))) "Before they are gone" - (= __ (count '())) + (= 0 (count '())) "The rest, when nothing is left, is empty" - (= __ (rest '(100))) + (= '() (rest '(100))) "Construction by adding an element to the front is easy" - (= __ (cons :a '(:b :c :d :e))) + (= '(:a :b :c :d :e) (cons :a '(:b :c :d :e))) "Conjoining an element to a list isn't hard either" - (= __ (conj '(:a :b :c :d) :e)) + (= '(:e :a :b :c :d) (conj '(:a :b :c :d) :e)) "You can use a list like a stack to get the first element" - (= __ (peek '(:a :b :c :d :e))) + (= :a (peek '(:a :b :c :d :e))) "Or the others" - (= __ (pop '(:a :b :c :d :e))) + (= '(:b :c :d :e) (pop '(:a :b :c :d :e))) "But watch out if you try to pop nothing" - (= __ (try + (= "No dice!" (try (pop '()) (catch IllegalStateException e "No dice!"))) "The rest of nothing isn't so strict" - (= __ (try + (= '() (try (rest '()) (catch IllegalStateException e "No dice!"))))