From 686339d1fae622df20fa73b72b632ca3cb7fd7be Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Sun, 4 Dec 2022 18:33:40 +0200 Subject: Add .clj-kondo/config.edn, fix warnings --- .clj-kondo/config.edn | 3 +++ src/aoc_2022/day01.clj | 9 ++++----- src/aoc_2022/day02.clj | 10 +++------- src/aoc_2022/day03.clj | 13 ++++++------- src/aoc_2022/day04.clj | 11 +++++------ src/aoc_2022/utils.clj | 13 +++++++------ 6 files changed, 28 insertions(+), 31 deletions(-) create mode 100644 .clj-kondo/config.edn diff --git a/.clj-kondo/config.edn b/.clj-kondo/config.edn new file mode 100644 index 0000000..0974916 --- /dev/null +++ b/.clj-kondo/config.edn @@ -0,0 +1,3 @@ +{:linters + {:refer-all + {:level :off}}} diff --git a/src/aoc_2022/day01.clj b/src/aoc_2022/day01.clj index c26c87c..2bced4b 100644 --- a/src/aoc_2022/day01.clj +++ b/src/aoc_2022/day01.clj @@ -12,14 +12,14 @@ (defn task1 [rows] (->> rows - (map (fn [row] (if (not (empty? row)) (Long/valueOf row) ""))) + (map (fn [row] (if (seq row) (Long/valueOf row) ""))) (split-by "" []) (map (fn [calories] (reduce + calories))) (reduce max))) (defn task2 [rows] (->> rows - (map (fn [row] (if (not (empty? row)) (Long/valueOf row) ""))) + (map (fn [row] (if (seq row) (Long/valueOf row) ""))) (split-by "" []) (map (fn [calories] (reduce + calories))) sort @@ -29,6 +29,5 @@ (with-open [rdr (io/reader "resources/day01_actual.txt")] (let [rows (line-seq rdr)] - (do - (println "task1:" (task1 rows)) - (println "task2:" (task2 rows))))) + (println "task1:" (task1 rows)) + (println "task2:" (task2 rows)))) diff --git a/src/aoc_2022/day02.clj b/src/aoc_2022/day02.clj index 45bba95..25573fd 100644 --- a/src/aoc_2022/day02.clj +++ b/src/aoc_2022/day02.clj @@ -1,6 +1,6 @@ (ns aoc-2022.day02) (require '[clojure.java.io :as io]) -(require '[aoc-2022.utils :as utils]) +(require '[aoc-2022.utils :refer :all]) (defn score-round-result [own opp] (cond @@ -17,9 +17,6 @@ :paper 2 :scissors 3}) -(defn score-round [own opp] - (+ (score-round-result own opp) (get score-own-play own))) - (def plays {\A :rock \B :paper @@ -63,6 +60,5 @@ (with-open [rdr (io/reader "resources/day02_actual.txt")] (let [rows (line-seq rdr)] - (do - (println "task1:" (task1 rows)) - (println "task2:" (task2 rows))))) + (println "task1:" (task1 rows)) + (println "task2:" (task2 rows)))) diff --git a/src/aoc_2022/day03.clj b/src/aoc_2022/day03.clj index 38ae011..53d162e 100644 --- a/src/aoc_2022/day03.clj +++ b/src/aoc_2022/day03.clj @@ -1,6 +1,6 @@ (ns aoc-2022.day03) (require '[clojure.java.io :as io]) -(require '[aoc-2022.utils :as utils]) +(require '[aoc-2022.utils :refer :all]) (defn compartments [sack] (let [n (count sack)] @@ -12,7 +12,7 @@ occurs (fn [hs] (filter #(= needle %) hs))] (cond (nil? needle) nil - (not (empty? (occurs haystack))) needle + (seq(occurs haystack)) needle :else (find-common (rest needles) haystack)))) (defn priority-of [item] @@ -35,8 +35,8 @@ (nil? needle) nil (and - (not (empty? (occurs hs1))) - (not (empty? (occurs hs2)))) + (seq (occurs hs1)) + (seq (occurs hs2))) needle :else (find-common2 (rest needles) hs1 hs2)))) @@ -50,6 +50,5 @@ (with-open [rdr (io/reader "resources/day03_actual.txt")] (let [rows (line-seq rdr)] - (do - (println "task1:" (task1 rows)) - (println "task2:" (task2 rows))))) + (println "task1:" (task1 rows)) + (println "task2:" (task2 rows)))) diff --git a/src/aoc_2022/day04.clj b/src/aoc_2022/day04.clj index bd4d562..c046cb7 100644 --- a/src/aoc_2022/day04.clj +++ b/src/aoc_2022/day04.clj @@ -1,7 +1,7 @@ (ns aoc-2022.day04) -(require '[aoc-2022.utils :refer :all]) (require '[clojure.java.io :as io]) (require '[clojure.string :as str]) +(require '[aoc-2022.utils :refer :all]) (defn parse-rows [rows] (->> rows @@ -23,7 +23,7 @@ count)) (defn assignment-overlaps [[a1 a2 b1 b2]] - (not (or (> a1 b2) (> b1 a2)))) + (nor (> a1 b2) (> b1 a2))) (def task2 (chain @@ -33,7 +33,6 @@ (with-open [rdr (io/reader "resources/day04_actual.txt")] (let [rows (line-seq rdr)] - (do - (println "task1:" (task1 rows)) - (println "task2:" (task2 rows)) - :done))) + (println "task1:" (task1 rows)) + (println "task2:" (task2 rows)) + :done)) diff --git a/src/aoc_2022/utils.clj b/src/aoc_2022/utils.clj index 4ade901..c59d498 100644 --- a/src/aoc_2022/utils.clj +++ b/src/aoc_2022/utils.clj @@ -33,15 +33,16 @@ `task1` and `task2` should take a list of strings as their first argument." [day task1 task2] (let [{:keys [sample actual]} (read-aoc day)] - (do - (println "task1 @ sample:" (task1 sample)) - (println "task1 @ actual:" (task1 actual)) - (println "task2 @ sample:" (task2 sample)) - (println "task2 @ actual:" (task2 actual))))) + (println "task1 @ sample:" (task1 sample)) + (println "task1 @ actual:" (task1 actual)) + (println "task2 @ sample:" (task2 sample)) + (println "task2 @ actual:" (task2 actual)))) ; Functions -(defn chain "forward compose: comp fns in reverse order" [& fns] +(defn chain + "forward compose: comp fns in reverse order" + [& fns] (apply comp (reverse fns))) ; Logic -- cgit v1.3