Fork me on GitHub
#clojure-norway
<
2024-05-07
>
magnars05:05:19

Jeg syns Prolog var innmari gøy på universitetet, men hadde ikke forventet å få noe glede av det i arbeidslivet, men joda! Datomic valgte seg Datalog som spørrespråk, med en tydelig inspirasjon av Prolog og dens logiske slutninger. Jeg skriver litt om Datalog i dagens bloggpost på Parenteser-bloggen. Det er attpåtil en sjokkerende tvist på slutten. 😅 https://parenteser.mattilsynet.io/datalog/

💯 5
😊 1
🤯 1
3
teodorlu07:05:20

Nydelig tekst! Liker veldig godt eksemplene og motivasjonen for hvorfor. Og fint grep med “putt spørringen i en def, så kan folk kalle den som de vil selv. Jeg ville helt sikkert laget funksjoner!

❤️ 1
slipset12:05:21

Litt late to the party lissom, men: Da jeg begynte i Ardoq hadde vi et dao-lag:

(ns user-da)

(defn find-by-id [db id]
  (m/query-one coll db {:_id id}))

(defn find-by-name [db name]
   (m/query db coll {:name name}))

;; etc
over tid skjønte jeg jo, akkurat som @U07FCNURX at det er jo spørringene som er gullet, ikke eksekveringen av dem. Derfor har vi nå funksjoner som:
(defn by-id [id] {:_id id})

(defn by-name [name {:name name})
etc. Og disse kan da også trivielt kombineres:
(defn by-id-and-name [id name] (merge (by-id id) (by-name name)))
Dog ser det litt anderledes ut idag fordi vi spør mot psql og ikke mongo.

🙌 1
👍 1
magnars05:05:48

Jeg hadde egentlig tenkt å skrive om mer avansert Datalog, men oppdaget (igjen) at det jo var mer enn spennende nok å skrive om det grunnleggende. 🙂

🙂 1
💯 1
magnars05:05:52

God morgen, forresten!

boosja06:05:22

God morgen!