This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-11-21
Channels
- # announcements (1)
- # beginners (20)
- # biff (5)
- # calva (43)
- # cider (5)
- # clj-commons (7)
- # clj-kondo (11)
- # clojure (58)
- # clojure-brasil (1)
- # clojure-denmark (1)
- # clojure-europe (27)
- # clojure-nl (1)
- # clojure-norway (13)
- # clojure-uk (2)
- # clojurescript (71)
- # data-science (32)
- # datalevin (6)
- # datomic (19)
- # emacs (1)
- # gratitude (3)
- # honeysql (8)
- # hoplon (15)
- # hyperfiddle (3)
- # introduce-yourself (1)
- # lsp (19)
- # malli (4)
- # nbb (7)
- # other-lisps (5)
- # practicalli (1)
- # re-frame (14)
- # releases (1)
- # ring-swagger (1)
- # squint (118)
- # xtdb (9)
- # yada (2)
Dagens høydepunkt fra javaverden. Hvorfor gjøre det lett, når man kan gjøre det vanskelig? 😂
record Foo (String name, Optional<Instant> born){}
var listOfFoo = List.of(
new Foo("a", Optional.of(Instant.now())),
new Foo("a", Optional.of(Instant.now().minus(10, DAYS))),
new Foo("b", Optional.of(Instant.now())));
// Oppgave: Filtrer listen av Foo slik at kun de eldste med samme name er igjen
var result = listOfFoo.stream().collect(Collectors.groupingBy(Foo::name))
.entrySet().stream()
.collect(Collectors.toMap(Map.Entry::getKey, (Map.Entry<String, List<Foo>> e) -> e.getValue().stream().max(Comparator.comparing(v -> v.born().orElse(Instant.now()))).get()))
.values();
Skjønner hvorfor Javautviklere ikke liker alle parantesene i Clojure 😂🙈 1
😅 1
😂 3
Her er en min take på en clojure løsning 😁
(def list-of-foo
[{:name "a" :born (Instant/now)}
{:name "a" :born (.minus (Instant/now) 10 ChronoUnit/DAYS)}
{:name "b" :born (Instant/now)}])
(->> list-of-foo
(group-by :name)
(vals)
(map (comp first (partial sort-by :born))))
Jeg vet ikke hvor mange "objekt-til-objekt mappere" jeg har skrevet det siste halvåret hvor jeg bare gjør en type om til en annen som er 90%+ lik bortsett fra navnet. Eller brukt https://docs.automapper.org/en/stable/index.html. Verst av alt er når man har objekter i objekter i objekter, etc. Dypt nøsta. Hvor alle objektene bare kunne vært maps.
"When you combine two pieces of data you get data. When you combine two machines you get trouble." —Rich HickeySource: https://youtu.be/tRoVyblAGrs?si=tbAR95gD-c1G2-DN&t=888