Fork me on GitHub
#clojure-norway
<
2023-06-19
>
leifericf10:06:17

God ettermiddag!

leifericf10:06:58

Jeg leser om map, reduce og fold. Fant dette https://clojure.org/reference/reducers: > "[…] some collections (persistent vectors and maps) are foldable. The fold operation on a reducer executes the reduction in parallel […] If a collection does not support folding, it will fall back to non-parallel reduce instead." Kan man si at fold er for reduce det pmap er for map? :thinking_face: Med en innebygget fallback hvis collection ikke støtter fold.

augustl10:06:30

ah, reducers…. dem har jeg ikke brukt så mye må jeg innrømme

leifericf10:06:47

Åja, haha. Innser nå at det ikke var den reduce jeg trodde det var 😅

leifericf10:06:38

Men fold er vel bare et annet ord for reduce på en måte. Bare at med fold så kan man angi "retning" for hvordan collection blir prosessert. Vet noen språk har "fold right" og "fold left" for eksempel.

msolli11:06:23

Noen som har gode erfaringer med et JS graf-bibliotek som funker fint med ClojureScript? Trenger bare å tegne enkle kurvediagram, men det kan gjerne komme med styling så det ser ok ut som standard?

Zeniten11:06:27

https://www.chartjs.org/ fungerte fint. (Men det er lenge siden, og jeg har ikke prøvd andre.)

👌 2
isak14:06:27

Vi bruker denne: https://vega.github.io/ Fin, fordi chartene er bare basert på JSON data, og de har en fin editor med preview man kan bruke.

👍 2
teodorlu15:06:19

Jeg liker også Vega, det er veldig fleksibelt. Men det er ikke så sexy ut av boksen, og jeg vet ikke hvor lett det er å få det til å se bedre ut. Kan bruke #C02PF73SETZ eller https://github.com/jsa-aerial/hanami for å lage Vega-plots fra Clojure.

teodorlu15:06:26

Mulig Oz kun støtter clojure på JVM.

schmandle08:06:20

+1 for Vega. Har brukt det mye i det siste. Men fant ut at de ulike clojurescript wrapperne kostet mer enn de smakte. Jeg bare bygger opp et vega dokument som en clojure datastruktur, konverterer den til json og mater den inn i js/vegaEmbed . Styling kan være en del av dokumentet, typisk under :config nøkkelen.

👀 2
teodorlu08:06:49

> Styling kan være en del av dokumentet, typisk under :config nøkkelen. > Det visste jeg ikke om. Takk!

msolli08:06:35

Endte opp med å prøvde Chart.js. Ble ganske bra, og lett å integrere. Bare å generere konfigurasjonen i Clojure og mate inn i komponenten med clj->js .

👍 2
schmandle09:06:47

> Det visste jeg ikke om. Takk! Her er et eksempel på en vega graf med innebygget styling https://vega.github.io/editor/#/url/vega-lite/N4IgJAzgxgFgpgWwIYgFwhgF0wBwqgegIDc4BzJAOjIEtMYBXAI0poHsDp5kTykBaADZ04JAKyUAVhDYA7EABoQDCHABOCOJhSpQONXCQImguGhAAVGDQgACWEjWZbAdyR2oBpJjgATW0wAnrZYuPhECDSebL7eVLJslLYAor50tvRwtgAGUHIAZjRk2baqUJjsshlstkiCPmq1ODiGakiyUHCUIAC+SrHaaKDEdQxwEGgA2qBQ3uRsaoHmiiD5BgCOaGIAjGIALAAcSiNqNEgmZuh1vuora0jllWgADJTPAOz7AGwH218ATABmf5fMT-ACc4K+Sgg2icaD+SiYNFkgnOcEE5j+K1hbBwCPeShaak6skwaHelG+vwBwNBEPBYn6cFkEDoS1QlOpfyBILBkLEfRmczICw5IDuGzQe0BH3Bx0cZwu5mutyU90echeby+sq+4KBYk+B3+23e-0JIFhjnJqDNSJRaKYGKx7xxmDxCKOIGJpNtX0oeoNgKNYhNZotTJAN1Z7LQAaDhuNpvNnyFIFmPlFi2W6qlqH+Bz2hYVp3OphVghuaklDwqWtQr2eez+2yhgL2hwOX2bX0t1vhdu9yNR6Mx6G2B3dnrt8p96j90sorfbnYO3d7lpjbMwHL2y6+bd1a43ez76cz8xz6ElcE2BdlYkBpaVFauVbVqzamvkjbegMBT5m0AwEDmeRkxDBGE4VtNsHVHZ1xxANtp3xAtniJBcWVtQFAyAmV3lA8DIKg6MWR3DlcMAsRgMIsCILBC8RTFXMvzvNB-kjKMTlfS4QFVGs8zrJ4-2eADAW2Ft9j2fk9g+PZoJtDiMJAEcnRddB-meVCOO2TCSWwtAqIkqTO1k+TmVjXcjMDEzdjMiE5PePYmKzFibzzdiC12RkX3LPiBNrH9tTE1sw3eNtJJDcEIsUwdTXg9SkNNHSC3+fTF1QXCwoOCLwSisQYr0sirMog9dlyyKZUKiLXKvcVb3vNtfmfEAeP8ytqyC+tfybCFnmefUwzEL4AXBGl+xgjj0tUx0x3MTjUqBDLDILShwQGoaDhGsaJssiiOPWzbGW20aIQmurswazymvecM-OVd8uqE4LRJBcDnhqnZzW7Q9WoHW1ltmhCNJAIEloU+cDLJQ6ew2r6I1+7ZWu3OM1rhz6Yu+wtRuRy73IlG6EVBZ4Zvax7+I-QSv2Ehs+qkxkAMk95xrGuLAchtT5s0vYlqjX1Vv+SgGafEyWe7CF9rRoWRaZvZxbG-Hr0JtimqfAEHrfSnnpp16+v+PZ4YkjtC36z52Y4qMucQhaxCW6EocyoWDaN5HixNDbnKl6y1pdz7jfds2XIUYU3OVxqERbTtNYCqnupEvqPg+ACz3eQjJ0hSalILB3rdBkElstAWYbWpPCI7Pt04OSEHdRn2hbLlPK4k6uoSV67VYRDttpjzrPw1HqQrbZz-ifGTtm2AbO2BC2C0tPPkrdaCZxLR3Vu2daR7HnZJ+bGUUfItGN5i4tt4nqf9-b1i1i8t3Dl7p7++-QfRKPddAVBeyzTE70AY44c5o200lOZeaFJZrxLsfH4BwP47H2N-UCM064cige-T+8D3g-3+FfDync7Sj32A-bWT9aa9TeJOQCjI-iAWeNsd6kM-4FjnAvBa4JUqyhWpAygMCWY7F1JguhPZIbIIRNwyhfCaGCObDglWN8mqj0wUQwKL0X5NknHJRyxEfgk1yrPDhwMkrmFlOw4qxdYLcI0eCOSjJtE0XXN7FBFjSZWK0d2OxBwZER3wRPOc5MtbKN1qo8hadiyjWbJOCq9k9HFRYegCS7CZpmNESEkEQiIlhiiSVA6dpKApLCS2X4GT9ieKJnaP4vk2qKg6o-amA8E7BLoW2Z464hrl1GnomasSQDAnYa1JJOSIqmg2i0xkbTa6Hx9hvQZTSRlGgAqNEpeCJ6RiUXHFR9TaEkwERXd4fYU56Nal0gC7DIb9I3ls2hOy9kdgcaIi5bs+zXODqHeq198zLP0X42OOs6l03IV8TsE8W5mjPDFXUejOaANBh2dh-MsJcIBS2ZGETnL6l2QfUqdzAXIt+KisFgJFlyIRJE1ZPzn4bPKZBAa3Zq6fV2TJPRVsoVIRDOwh2ZzKBDRos0n48N6VRhETkrl1LeV0oBYKEOGZmLh1KRPAE3EqkUwCb8shtCBFWJBLKUeG1SZZ0HB-RK3NulfHYUXeF5j1WhK1YVAaq9BVTNoRq3UpMbWkw8ZKy8V03m32ZmTRV-i1mBIpX2Rk7t9QZzuoRPR89mVGKXlaD0aFQKcPMSG-YON8rV0jeMzFQreFhszTFXKXxCXvMnD2UlJC9bBI-h2ZyBpQrjTEnogBIMWUgITTOQEc4OWEWPPWrSEkm3CImY4vtdbDaDuatIj10qO5ErKSzXx-rvlVqCWqi0LZtEwMAhFX+U0srMNjXEthoDpQqV7Zuv4NKAJp0nLcgZV7t23r3aW2+g7WpfL7rU8lfy1WHj7E+EE08jR9lnnJQ1QCQByVSi2FNySAOfDpCB3ZW5R0Ib+Eh4D1VUNvqahGT9K7v3xz-WaHkG0M66lGnq20cGDFGpbLBxJ5rknkdodXKjYGslH1yWxyjH9zyzrDvOstVHK0-tIUPTBIYnxJxqhJA24HOnHug-8WDfSWMDLEpBWUmD5N0Ixdkh1MndOY3TkCPDxKAQqS-TUkjqrv6NMGj4oETl-oHplJB0GMpYOnM0w6pzh42yuYstxyZuTaGmmc8Fjs8lLNlJgcVWzxCJPVrVcCSeZpTrbTBPu7O0d6NQc7LBuF0MLUZbVdlyCFo5z2tyRVrLI0cs1fixPJ8lpkvKt-Q50VhVJ6fDBGCB2jCGWFe83bM9qAzzwaFbSvrHxqtDYfecub+UFuDZBK11shGyxKsDSqqTA1JxGglk+I0DCPO5xU2eWDZqyvJKO9tO68qQxezC2Ox7J2Xvna22aDrRG7PrNI1RkMgFcqgShKNC7+WY1tvMPLWD3oOUg-a+Djjo0BXoaFbW1HdFIegl+zPSpu2A1ksk6-MauyRqcQ-uCWUBpwOtsMegQ4sGe3+c5RCKnAIgT6np8tznYLqe87p+BVrHwwLifs0PE7QJdgSX2LFmaI2j1w5Z6eztaEaIzY3rLhXCuZQaOKnVvX8v7JK+2Ftl2Uugc9bPNXQ4Oxiw06LLPbXY2kI0VSjsHXnL7dWO2pJTiQIYEC4Bbyx3QeXcEqE683BC7ln6ht0G4HhsTQQgNvSw8FTGE+49+YHY3vmP3aFWnziBp5bh7bCO3N5yy8Z8r2eavW3QnJ4OxTn6zTZSfVJhJZpbvlNq5AGCb3GmS-nM7zAgaNE5fgTD5P7vM++-gi2zsP1JPV2pfXdep8kJaHhRkobKMufDkqafN7vz4-OXbW7RRg-+wKl1Z+Lvu-uVD+Mla6aCebfutScIuBQ4OheWFpdzbOQhfPdAfYb3UrTKKZf-APIAu6bsQzHjNOenQAzPEAz-M0ZdDfYjW3KTKfGfQ8IsCEcKN3JlIfSCb3dlDnO6R8UmEg4sE6NDWvXJIgxg9RMg3KT-Q2f7PAwHFPBzD2HsM6BWXFGjLYK7Kgk1SbI0X3EQwaAEcQv7AXRQsQ1mCQ1rBTb0TrfbX-V+A0ZqQiFsOnB3YqXPWHZnYfeNXELXJHDnIw8aEwtsCHOSb0OrJw8HUwtw5pbQ6xH-cnNRdsQRNOIESEbtY-A9MMLzT3DtOwrYdnK-EIkEMI2-SIgXFIyucIunD-WPL1ePd5Jmfg3ifAoQoeKxKEUDEMUmTsZ3N3VXawwqVKCtCBcxSo0EdFGfOohKd7URDo6o7ozsU0VrGiPPPQsnNLTibTU0QqIidcE0WeVorpHsFo0xTTZ2GYnyeY9cJBLHTYkMWYsw5pXYnoAAXT6CtBaCgCGBABcBoF8HoHjH0TRECFuFQGmBAGQDUAAGtbjdwWhzAmBHAcQaAAAvS4SSKkeCAAZRwAeBRDIBeEuJZDyDSFkCRN0BAAAA9bjCgMRfBzA-4lAAS+J1gGB2gKhtAKhSAVgqTSdPxoA6hLhQBfA2BkAUQphERDwLilAkBsSbBbjIhZBkhsSfAS4tIlAyBThCTUBMA1AxgiQ2AdwRJ+B3gehLiORQB8SqxzAkkSS6AtYAAFNQZUwyEkwIQE9AckykugbwGgWkvkgUiYLEtgfIfIVQHCKkDUkktgNgeoGgNCT4nU2U-PA0zABkmsdMEMvUljcM40001QGGdUBYZAW0EAAAP16AuPOMuLyEEAYAQFZARHVAeC0DxJoAJPME9RYnjL4jpMtL4gSGFLqF6CUAMBkEEFpKxP5MFKxNxPQAgBgEcD8BWHFCHJHMJMuKZLfFAAHKtGHIMCnI1KAA

schmandle09:06:52

Nei, beklager, stylingen blir tydeligvis ikke med i share lenken fra vega editoren 😞 Følgende skulle vært i config fanen:

{
  "tick": {"color": "#839496"},
  "axisY": {"tickSize": 3, "format": "~s"},
  "bar": {"fill": "#859900", "strokeWidth": 0},
  "rule": {"color": "#839496"},
  "background": "#002b36",
  "legend": {
    "titleFontSize": 12,
    "format": "~s",
    "labelColor": "#839496",
    "titleFont": "IBM Plex Sans",
    "titleColor": "#839496",
    "labelFont": "IBM Plex Sans",
    "labelFontWeight": 400,
    "labelFontSize": 12,
    "titleFontWeight": 700
  },
  "header": {"labelColor": "#839496"},
  "title": {"fill": "#586e75", "fontSize": 12, "fontWeight": 700},
  "axisX": {"labelAngle": 45, "format": "~s", "labelPadding": 4, "tickSize": 3},
  "style": {
    "guide-label": {"font": "IBM Plex Sans", "fontSize": 12, "fontWeight": 400},
    "guide-title": {"font": "IBM Plex Sans", "fontSize": 12, "fontWeight": 700}
  },
  "point": {"color": "#073642"},
  "axis": {
    "labelColor": "#839496",
    "gridColor": "#073642",
    "titleColor": "#839496"
  },
  "view": {"stroke": null},
  "range": {
    "ramp": [
      "#849900",
      "#728F0F",
      "#63861C",
      "#587C27",
      "#507330",
      "#4B6938",
      "#47603D",
      "#445640",
      "#424D41",
      "#414441"
    ],
    "category": [
      "#859900",
      "#2aa198",
      "#268bd2",
      "#6c71c4",
      "#d33682",
      "#dc322f",
      "#cb4b16",
      "#b58900"
    ]
  },
  "text": {"fill": "#586e75", "fontSize": 12, "fontWeight": 400}
}

teodorlu09:06:32

Kult, takk!

cjohansen11:06:12

Vi bruker d3, men det er mer en verktøykasse enn ready to go shit

👍 2
slipset11:06:28

Jeg mener at noen hos kodemaker (Anders) skrev en blogg om psql, indexer og foreign keys der greia var at hvis du ikke hadde index på den “andre” siden av fk’en så gikk ting tregt?

slipset12:06:23

Det var den ja.

teodorlu15:06:29

Morn!

😴 2