Fork me on GitHub
#clojure-italy
<
2019-06-04
>
helios07:06:26

buongiorno people

Lu07:06:45

Buongiorno ☀️

Lu08:06:02

Un nuovo giorno una nuova avventura con clojure 😂

👍 4
alan08:06:05

Raga una domanda un po' boring: sto facendo un botto di Java interop (lucky me...) e siccome sono abbastanza sicuro di alcuni errori che possono occorrere volevo rendere più chiari alcuni di questi. Un esempio è

(catch java.util.NoSuchElementException e
  (throw (ex-info "Wrong index" {:cause "Out of bounds"})))
Tralasciando momentaneamente la stupidità del messaggio, volevo sapere se è idiomatico e in caso come passare almeno parte dell'errore originale dentro la nuova eccezione

reborg09:06:12

tanto per cominciare, aggiungi “e”: (throw (ex-info "Wrong index" {:cause "Out of bounds"} e)

reborg09:06:58

Credo che piu’ che idiomatico sia in generale una buona idea di non buttare la root-cause. Poi quando devi stampare l’eccezione magari fai un po’ di lavoro per renderla leggibile (evitando 10 pagine di scroll di nested exceptions per esempio)

alan09:06:01

@reborg il punto è proprio quello. Avendo una condizione di entrata abbastanza a prova di cannone

(cond 
    (number? sheet) (try (-> wb (.getSheet sheet) .get)
                         (catch java.util.NoSuchElementException e
                           (throw (ex-info "Wrong index" {:cause "Out of bounds"} e)))
    (string? sheet) (-> wb (.findSheet sheet) .get))
so già che se arriva quell'errore è perché manca l'elemento richiesto (se ve lo state chiedendo, sì è una roba per leggere file Excel 😁) e vorrei evitare di sbrodolare addosso all'utente l'errore dell' Optional che fra l'altro sarebbe anche abbastanza basso nello stack

alan09:06:47

A proposito, vedevo che mancava solo il capitolo sulle strutture dati dal libro, quindi siamo vicini alla pubblicazione? 😃

reborg09:06:01

Apropos di idiomatico: (.. wb (getSheet sheet) get)

reborg09:06:51

Dici chap 8 collections? No quello e’ un bug Manning che ho riportato gia’ 3/4 volte :man-shrugging:

reborg09:06:49

Manca un chap 22 con un mischione di varie cose minori ed altro che verra’ aggiunto agli altri capitoli

Andrea Imparato09:06:09

domanda banalissima, che color theme usate per il vostro editor?

Andrea Imparato09:06:20

io uso zenburn, devo ancora trovare un tema migliore

reborg09:06:20

Solarized dark con qualche minor tweak.

reborg09:06:02

pero’ zenburn mi piace assai

Andrea Imparato09:06:11

è vim quello giusto?

reborg09:06:55

tmux con vim sopra e due terminal sotto

manuel09:06:07

zenburn qui, ma tomorrow-night è stato un grande favorito per un bel po' e potrei tornarci quando mi stufo di zenburn.

nilrecurring09:06:06

Qui monokai, ogni tanto provo a cambiare a solarized (light/dark a seconda del momento della giornata), ma torno sempre a monokai alla fine

helios13:06:23

Darcula pure qua

helios13:06:31

che non e' Dracula, ho scoperto ora

mdallastella14:06:13

Hola! Solarized Dark qui

skuro14:06:26

+1 per zenburn

Andrea Imparato16:06:03

ho appena scoperto beacon-mode, troppo carino!

Andrea Imparato16:06:33

comunque qualcuno di voi conosce questa ditta https://lambdawerk.com ?

reborg16:06:49

ah, conosco (perche’ lo seguo su twitter) Hans Hübner

Andrea Imparato16:06:13

ho un colloquio da loro il 2 luglio

Andrea Imparato16:06:35

(a quanto pare è lui che li fa ed è in us fino a quel giorno lì)

reborg16:06:32

E’ un esperto di LispMachine

reborg16:06:03

Ed un retro-computerista in generale

Andrea Imparato16:06:20

sì ho visto dal suo twitter

Andrea Imparato16:06:27

penso lo faccia anche per lavoro

reborg16:06:33

E c’e’ chi pensa che XML e’ morto…

Andrea Imparato16:06:41

Ce ne metterà a morire, json non é così ricco alla fine

alan17:06:29

Ma io penso che alla fine non dobbiamo e non possiamo essere tutti sul bleeding edge, non sempre c'è una buona ragione per usare l'ultimo framework js o simili, anzi se valuto stabilità, resilienza e sicurezza al 90% non sarò sul bleeding edge proprio per scelta. Poi siamo d'accordo che XML è proprio brutto 😂

helios06:06:39

una delle cose belle di clojure e' che e' stabile e va bene anche a distanza di tempo 😛

helios06:06:00

E c'e' una certa resistenza nell'essere 'fighi' e adottare nuovi framework dal day1

alan07:06:12

Concordo, è uno dei motivi per cui credo che rimarrò con Clojure per molto tempo, dopo che mi sono scottato con Python e tensorflow 😃

mdallastella08:06:54

@U0AD3JSHL è vero anche per Lisp in generale