clojure-norway

emil0r 2026-04-23T07:01:26.958829Z

Morn

teodorlu 2026-04-23T07:38:52.166099Z

morn!

2026-04-23T08:13:25.259949Z

mårn!

msolli 2026-04-23T08:43:23.796069Z

Mornings!

teodorlu 2026-04-23T08:57:33.778289Z

morn!

teodorlu 2026-04-23T08:57:35.611669Z

Bruker dere noe særlig transducers? Etter en diskusjon på kontoret gikk det kanskje er noe man aldri begynner å bruke hvis man ikke legger inn vanen. Endte opp med å skrive denne i internkalanen vår på teamet; > Jeg bruker bevisst transducers, enten (a) når jeg vet at jeg jobber på svært lange sekvenser, (b) når det blir mange mellomsekvenser og (c) når jeg er bekymret for exceptions. Selv om jeg starter med vanlig (->> xs (map ,,,)), fordi det er kjekt å REPL-e på plass. Vi har ikke noe særlig transducers i koden i dag, men jeg tror vi ønsker oss mer, særlig når vi jobber på mange entiteter og ting kan feile. > Synes Sean Corfield og Oleksandr Yakushev belyser problematikken bra, og tror vi hadde fått mindre lazyness i Clojure-standardbiblioteket dersom 1.0 hadde blitt laget på nytt i dag. > What if transducers where taught first? av Sean Corfield, https://clojurecivitas.org/clojure/transducers/what_if.html > Problemer med Lazyness, Clojure's deadly sin (clickbait!) av Oleksandr Yakushev https://clojure-goes-fast.com/blog/clojures-deadly-sin/

slipset 2026-04-23T09:22:17.404949Z

Jegt tror at hvis jeg hadde startet et projsekt idag så ville jeg brukt transducers mye mer. Men jeg finner det ganske tungt å introdusere det i en gammel kodebase. Usikker også på hvor mye vi evt tjener på små øyer med transducere

👍 1
gunnar 2026-04-23T10:20:39.101959Z

Hvordan bruker dere typisk transducere? (into [] (comp (map ,,,) (,,,)) ett-eller-annet) - eller mer lavnivå?

msolli 2026-04-23T10:58:28.809629Z

Jeg gjør akkurat det:point_up:. Har internalisert dette såpass at jeg sjelden gjør (->> some-coll (map foo) (map bar)) lenger.

teodorlu 2026-04-23T11:25:50.016529Z

Samme her, (into TOM (comp ,,,) xs) er nesten all min bruk! Det hender jeg def-er opp enkeltstegene,

(def foo-xf ,,,)
(def bar-xf ,,,)

(into #{} (comp foo-xf bar-xf) ["oranges" "appletrees" "bumblebees"])

teodorlu 2026-04-23T11:27:10.158379Z

Liker særlig into når jeg ikke vil ende opp med en seq,

(into #{} ,,)
(into {} ,,)
(into [] ,,)
(into (sorted-map) ,,)
(into (sorted-set) ,,)

gunnar 2026-04-23T11:31:38.180389Z

Takker for svar 👌

🙌 1
slipset 2026-04-23T09:27:42.867239Z

Inspirert av Tobias https://gist.github.com/slipset/dea3d514f3fabe04a0e99f2807bbba64

🤯 1
👀 1
❇️ 1
teodorlu 2026-04-24T08:22:39.193319Z

> implemented by Erik Assum as an experiment in metacircularity – the idea that a system can operate on itself Alternativ beskrivelse: a moldable environment for AI agents (kanskje best kjent fra https://gtoolkit.com/, Smalltalk-prosjektet til Tudor Girba) Jeg klarer ikke helt skjønne hva Wikipedia egentlig mener https://en.wikipedia.org/wiki/Meta-circular_evaluator betyr. Det er litt mye vifting med armene og litt lite klar definisjon. > A self-interpreter is a meta-circular interpreter where the host language is also the language being interpreted Basert på 👆, tolker jeg "metasirkulær" til at det er en symmetri i materialene. Materialene greia er bygget i er materialene greia brukes i. Første avsnitt handler om self-hosted compilers, som er nettopp dette. https://clojurescript.org/guides/self-hosting for noen år siden, og det betyr at js-artifactet du bruker kan kompilere Clojure til JavaScript uten en JVM i loopen. Med andre ord, materialene greia er bygget i (Clojure) er materialene greia brukes i (også Clojure). @tobias.laundal / @slipset hva tenker dere? Disse begrepene føles så abstrakte for meg at det blir mye vifting med armene og spekulering.

slipset 2026-04-24T08:39:23.681749Z

Det er vel mer en referanse til SICP forelesningene (som jeg ikke har sett ferdig) men når Sussman tar på seg trollmannhatten når han skal implementere eval.

Tobias Laundal 2026-04-24T11:10:42.523179Z

Ja, jeg tror ikke egentlig det er riktig å kalle dette metasirkulært, siden LLMen er helt ekstern fra Clojure/emacs-prosessen. Men jeg synes likevel det er litt beskrivende og gir noen riktige konnotasjoner

teodorlu 2026-04-24T11:13:19.053589Z

"moldable development" treffer blink, spør dere meg 🙂

🎯 1
Tobias Laundal 2026-04-24T11:13:53.898069Z

Jup, synes det høres veldig presist ut

teodorlu 2026-04-24T11:14:36.493419Z

det er også etablert: https://moldabledevelopment.com/

teodorlu 2026-04-23T09:48:07.177569Z

nå snakker vi! Agenten kan faktisk gjøre det mennesket kan gjøre!

teodorlu 2026-04-23T09:49:07.458899Z

Gøy at du også unngår problemet med buffere som er ute av synk med filer. Jeg blir så lei av falsk-positiver fra Clojure-LSP når den henger bak.

slipset 2026-04-23T09:50:40.313829Z

Og ikke minst, det er funkis 🙂

Tobias Laundal 2026-04-23T10:02:17.608969Z

Det går ann å tagge meg 😉

Tobias Laundal 2026-04-23T10:06:32.603109Z

Min variant begynte med 50 linjer clojure og har siden vokst til 13 000 linjer over 58 filer, inkludert en Matrix klient, webpanel, certbot klient og to små webapper som den bygget for meg

teodorlu 2026-04-23T11:23:18.094389Z

en mini-verden! 😄 Hva gjør du med tilgang? Kan agenten gjøre alt du gjør, eller låser du ned?

gunnar 2026-04-23T13:11:18.458649Z

Wow! Utrolig kult at det hele er såpass kompakt og konsist, @slipset. Og ikke minst at jeg kan copy/paste rett inn i emacs uten noe mer sermoni enn som så.

hypirion 2026-04-23T05:14:30.258719Z

Morn!

boosja 2026-04-23T05:24:01.908769Z

Morn!

slipset 2026-04-23T06:03:26.605959Z

Mrn

eaj 2026-04-23T06:36:05.630739Z

God morgen!