Fork me on GitHub
#clojure-italy
<
2018-09-24
>
alan06:09:22

Hola amigos! Ho appena rilasciato su Clojars la mia prima libreria in Clojure: https://gitlab.com/alanmarazzi/clj-boost Niente di trascendentale, sono dei wrapper per XGBoost, ma mi piacerebbe avere qualche feedback a proposito 😁

👏 4
reborg21:09:12

Congrats Alan, arrivo un po’ tardi 😁

reborg21:09:24

Non sono molto esperto di XGBoost ma forse potresti postare su #data-science se ho capito bene di che si tratta

reborg21:09:19

Questa cascata di map https://gitlab.com/alanmarazzi/clj-boost/blob/master/src/clj_boost/core.clj#L214 credo possa essere sostituita con base re-seq, tipo:

reborg21:09:27

(for [s (vec res)
          :let [kv (re-seq #"(\S+):([0-9\.]+)" s)]]
      (reduce (fn [m [_ k v]]
                (assoc m (keyword k) (Double. v))) {} kv))

alan05:09:27

Hey, grazie mille!! Sì, stavo pensando anche io che fosse bruttino, ma pensavo ad un transducer. Anche con re-seq non è male

alan05:09:32

Sì poi spammerò anche #data-science è che prima volevo capire se riuscivo a fare la build di cljdoc, ma xgboost dà problemi a quanto pare 😅

ferruccio15:09:11

grande complimenti!!

andrea.crotti07:09:53

Check out this Meetup with London Functional Programmers http://meetu.ps/e/FQg9H/3pms2/d

👍 4
andrea.crotti07:09:23

Ho notato adesso un talk di @reborg

😎 4
manuel07:09:05

@andrea.imparato occhio anche a aggressive-indent, se lo usi, perché su liste/file grandi può causare rallentamenti

Andrea Imparato08:09:48

ah quello non lo uso perchè so che ha problemi di performance 🙂

Andrea Imparato08:09:01

se qualcuno ha voglia potrebbe dare un occhio a questo codice che ho scritto https://github.com/p1mps/a40kc/blob/master/src/a40kc/core.clj e dirmi cosa ne pensa? E' del codice per parsare xml

reborg09:09:57

alcune cose: 1. La ns form all’inizio dovrebbe contenere tutti i require. 2. Meglio require [x :refer [y]] di use (che non mi dice che simboli vengono importati nel ns corrente) 3. Un for con dentro un map e’ equivalente al solo for aggiungendo il relativo parametro nei bindings. 4. Se possibile meglio evitare def con IO perche’ vengono eseguite a compile time. Preferisco defn senza args in generale. 5. esiste una keyword :let per for che toglie il bisogno di avere una let form dentro il for. 6. linea 54: C’e’ un do di troppo

Andrea Imparato10:09:29

grandissimo! ottima code review 🙂

Andrea Imparato10:09:40

ti devo una birra se mai venissi a berlino 😉

reborg10:09:52

prima o poi 🙂