clojure-sweden

emil0r 2025-10-16T06:26:28.469559Z

God morgon

pez 2025-10-16T07:07:18.577209Z

Gomorron!

2025-10-16T11:19:44.124799Z

🎉

2025-10-16T11:20:26.652029Z

Gomorron đŸ€“

2025-10-16T11:38:32.241859Z

Hade ju velat gĂ„ pĂ„ Func Prog-grejen, sĂ„klart. Ni som var dĂ€r, vet vi om nĂ„t kommer ut efterĂ„t? NĂ„gra höjdpunkter ni var med om? 😄

👍 1
Christoffer Ekeroth 2025-10-18T08:02:45.619369Z

Ja, bĂ„de FP och OOP Ă€r ju vĂ€ldigt olika. Alan Kay skulle nog motsĂ€tta sig Java som objekt-orienterat, t.ex. Det finns ju en del ”grundpelare” i bĂ€gge paradigmerna – det Ă€r svĂ„rt att sĂ€ga att ett sprĂ„k Ă€r FP utan ”första ordningens funktioner”, t.ex. Men nu för tiden kvalar ju i princip alla moderna sprĂ„k in i den kategorin. Egentligen Ă€r kanske den riktiga vattendelaren hur man ser pĂ„ ett ”program” - Ă€r det instruktioner till en maskin, eller Ă€r det ett matematiskt uttryck?

Ramin Soltanzadeh 2025-10-19T15:52:59.161319Z

Är inte OOP fundamentalt ett paradigm dĂ€r logiken implementeras i form av inkapslad mutable state (ursĂ€kta svengelskan) med (det ytterst missförstĂ„dda) syftet att försöka simulera verkligheten (som ju inte alls Ă€r mutable)? Ett objekt utan mutable state Ă€r ju vĂ€ldigt funktionellt (Ă„tminstone om man kan lita pĂ„ den dĂ€r Qc Na filuren)!

Jonas Östlund 2025-10-17T12:09:08.158129Z

Jag instÀmmer med @pez att det var mycket bra! Jag tyckte ett den första presentationen (om effektsystem) och den tredje presentationen (om STM-monaden) var bra ocksÄ och relaterade till varandra: bÄda handlade om hur man kan representera algoritmiska byggstenar i ett program som vÀrden och utföra operationer pÄ dem. Andra exempel pÄ detta Àr sÄ kallade "lenses" för att representera setters/getters som vÀrden samt transducers i Clojure för att representera algoritmer pÄ sekvenser som vÀrden.

pez 2025-10-17T12:19:13.777189Z

De verkar ha nĂ„gra steg kvar till att tĂ€nka “som data” i Scala-vĂ€rlden. Men “som vĂ€rden” Ă€r ett fint steg pĂ„ vĂ€gen. 😃

😁 1
pez 2025-10-17T12:24:26.852579Z

OcksĂ„ lite intressant att STM ofta verkar vara overkill i Clojure-vĂ€rlden, men viktigt för “the storytelling” som RH sĂ€ger 20:25 in i sin genomgĂ„ng av Clojures historia: https://www.pldi21.org/prerecorded_hopl.11.html

pez 2025-10-17T12:27:00.103079Z

En annan intressant grej Ă€r att mĂ„nga verkar göra nĂ„got slags likhetstecken mellan stark typning och FP. I STM-föredraget lĂ€t det som att “STM” Ă€r möjligt eftersom Haskell’s starka typsystem. T ex.

pez 2025-10-17T12:28:46.667189Z

Och mycket snack om monader! Mest att man borde sluta prata om dem, men de kunde inte lÄta bli. Jag ba: vad fan Àr monader för nÄt? Men möjligen Àr jag inte en funktionell programmerare.

pez 2025-10-17T12:29:54.575879Z

Inget av detta överskuggar att konferensen bara var bÀst. Det var mest kul att fÄ lite inblick i vad som surrar i skallen pÄ funkisar frÄn andra sprÄk Àn Clojure.

2025-10-17T12:32:46.180219Z

LĂ„ter superhĂ€ftigt. Det fick mig ocksĂ„ att lyssna pĂ„ Func Prog-podden. HĂ„ller helt med, andra sprĂ„k bara ökar ens
 tja. Vishet. 😄 Med tanke pĂ„ vilken enkel konstruktion en monad Ă€r, sĂ„ Ă€r folks vilja att anvĂ€nda namnet rĂ€tt bisarr. Det finns sĂ€kert ett ovanligt namn för ”lista” ocksĂ„, men varför
 men men. 😅

Christoffer Ekeroth 2025-10-17T12:56:29.152949Z

Precis, alla presentationer kommer dyka upp pÄ YouTube hÀr: https://youtube.com/@funcprogsweden?si=dYEwVB5wq8snOF1V

🎉 1
Jonas Östlund 2025-10-17T12:56:53.759979Z

Jag kÀnner att det vore kul att lÀra sig vad monader Àr Àven om jag har tvivel gÀllande deras nytta i det dagliga arbetet. Jag har ocksÄ noterat som du PEZ att det verkar vara rÀtt vanligt att blanda ihop statisk typning med funktionell programmering. Men alla talare hade riktigt bra flyt och var verkligen pedagogiska!

Christoffer Ekeroth 2025-10-17T13:03:00.833969Z

Egentligen Ă€r en monad bara en typ M dĂ€r det finns en funktion (a -> b) -> M a -> M b (brukar kallas ”bind” eller ”flatMap”). Det lĂ„ter ju lite luddigt, men om man kisar sĂ„ kan man se att det handlar om att ”kedja” ihop berĂ€kningar. Har man t.ex anvĂ€nt promises har man anvĂ€nt monader (typ)! Promise.then Ă€r en ”bind”, eftersom den tar en Promise<a> samt en funktion a -> Promise<b> och ger en Promise<b>

Christoffer Ekeroth 2025-10-17T13:04:58.749439Z

Monader Ă€r anvĂ€ndbara eftersom de Ă€r en abstraktion som rymmer en massa olika saker (felhantering, option chaining, etc) – precis som att transducers Ă€r en abstraktion ovanpĂ„ olika sorters iteration och aggregering

👍 2
2025-10-18T04:45:52.572179Z

Ok. Nu mĂ„ste jag ta upp ett favorit-irritationsmoment, och sĂ„ fĂ„r alla vara lugna. Jag menar det med all respekt, och Ă€r nyfiken pĂ„ era Ă„sikter i frĂ„gan. SĂ„hĂ€r - det hĂ€r med begreppen ”funktionell programmering” och OOP
 hur exakta Ă€r de egentligen? NĂ€r ni hör nĂ„gon sĂ€ga nĂ„t av dem, och argumentera för eller emot
 vet ni dĂ„ exakt vad som avses?

2025-10-18T04:47:09.065209Z

Jag tycker att mĂ„nga, mĂ„nga (kanske samtliga) diskussioner och intervjuer jag hör faller platt. Man kan liksom inte sĂ€ga ”höhö, Java OOP” och tro att det innehĂ„ller nĂ„gon information.

2025-10-18T04:48:08.741809Z

Och inte heller ”hah, vi har ju map istĂ€llet för for-loopar” och tro att nĂ„n vuxen mĂ€nniska tar det som ett argument för nĂ„nting.

2025-10-18T04:48:58.173879Z

Jag Àr super-intresserad av riktiga analyser och resonemang om riktiga fördelar och nackdelar, men det Àr sÄ sÀllan. Och det Àr synd.

2025-10-18T04:56:21.172229Z

FP vs OOP har samma problem som statisk vs dynamisk typning, det blir ofta pajkastning. Men den senare Ă€r ju en snĂ€vare diskussion sĂ„ iaf lite oftare blir det konkret. Men Ă€ven dĂ€r Ă€r det ofta argumentet Ă€r (t ex, för mer typning) ”mer kontroll Ă€r bĂ€ttre, doh” och inget mer. Det Ă€r liksom inte övertygande 😄

pez 2025-10-16T11:56:31.743489Z

Presentationerna spelades in sĂ„ du har tre sjukt grymma förelĂ€sningar att se fram emot. Alla tre var höjdpunkter, men om jag tvingas vĂ€lja nĂ„gon blir det presentationen om Gleam, av sjĂ€lvaste Giacomo Cavalieri, frĂ„n Gleam’s core team. Jag blev helt tagen och betagen av sĂ„vĂ€l Gleam som Giacomo. Lyckades fĂ„ en selfie med honom. Kommer bli nĂ„got att skryta om nĂ€r Gleam Ă€r vĂ€rldens största programmeringssprĂ„k.

pez 2025-10-16T11:58:17.742499Z

Skrev lite om upplevelsen pÄ linkan: https://www.linkedin.com/feed/update/urn:li:activity:7384520724914257920/

2025-10-16T12:02:45.689859Z

Kul! Det var ditt inlĂ€gg pĂ„ LI som fick mig att tĂ€nka pĂ„ att frĂ„ga 😀 Kul som tusan att det kommer ut!

pez 2025-10-16T12:05:45.971289Z

Inget snack om AI alls. VÀldigt uppfriskande! Jag har ju inget emot AI, och snackar gÀrna om det, men det finns sÄ mycket kvar av diskussionen om programmering som det pratas för lite om i dessa dagar.