Fork me on GitHub
#clojure-norway
<
2022-08-29
>
msolli06:08:03

God morgen!

magnars07:08:13

God morgen ☀️

teodorlu07:08:16

En vakker dag for å transformere data med funksjoner. Håper jeg, I alle fall. Kan hende det blir litt http-stæsj også.

augustl07:08:36

ønskes: update i alle språk. Mangler i Kotlin, overraskende (eller kanskje ikke) hvor kjekk den funksjonen er

slipset07:08:29

update er jo vanskelig kanskje å uttrykke typesikkert?

slipset07:08:56

T update(T t, Prop<S> p, (S -> S)) Nei, det var det ikke 🙂

slipset07:08:50

Hadde vært interessant i Java f.eks om Object inneholdt update/`update-in` (vanskeligere å type)

augustl08:08:16

Typescript har en greie på “inline arrays” eller hva det nå heter, så da buuuuuurde det kaaaaanskje gå an å type update-in (siden den vet compile-time om alt som er i lista, men kanskje liste-typer er problemet, man trenger tupler)

isak14:08:54

Update er vel lett i alle språk. Jeg tror det blir update-in som blir vannskelig, spesielt hvis man må støtte alt. (Hvis man bare trenger 3-5 nivåer, kan man gjøre det med et hav av overloads)

isak14:08:09

C#:

public static class Clojure {
    public static Dictionary<K1, IReadOnlyDictionary<K2, V2>> UpdateIn<K1, K2, V2>(
        IReadOnlyDictionary<K1, IReadOnlyDictionary<K2, V2>> d, 
        K1 k1, K2 k2, 
        Func<V2, V2> f) {
        throw new NotImplementedException();
    }

    public static IReadOnlyDictionary<K1, IReadOnlyList<V2>> UpdateIn<K1, V2>(
        IReadOnlyDictionary<K1, IReadOnlyList<V2>> d, 
        K1 k1, int k2, 
        Func<V2, V2> f) {
        throw new NotImplementedException();
    }
    
    public static IReadOnlyDictionary<K1, IReadOnlyDictionary<K2, IReadOnlyDictionary<K3, V3>>> UpdateIn<K1, K2, K3, V3>(
        IReadOnlyDictionary<K1, IReadOnlyDictionary<K2, IReadOnlyDictionary<K3, V3>>> d,
        K1 k1, K2 k2, K3 k3,
        Func<V3, V3> f) {
        throw new NotImplementedException();
    }
    // osv for alle kombinasjoner av dictionary og lister til nivå ~5, eller det man trenger
}

slipset17:08:32

BTW, hvis du skulle trenge en gjennomleser til av boka di (du har sikkert mange allerede), så gi meg en ping.

🎉 1
jonas19:08:12

Hey, har lurka en liten stund men enda ikke sagt noe 👋 Sist jeg skrev Clojure var mens jeg gikk på universitetet og progga hele tiden, Siden det har jeg vært innom mange typede språk og gjort noen dykk i ting som scala (på jobb) og purescript/haskell (ikke på jobb). Men nå driver jeg å fikler litt med et sideprosjekt og dro frem Clojure igjen, det er så smooth :star-struck:

👋 7
teodorlu09:08:28

Hei! Velkommen 😊

jonas19:08:36

En ting som forundrer meg når jeg sitter å knotter på kveldene er hvor lite jeg savner statiske typer.