Fork me on GitHub
#clojure-italy
<
2019-06-03
>
reborg09:06:39

Pensavo a core.async vs future/delay/promise. C’e’ posto per entrambe ed hanno chiari vantaggi/svantaggi. Credo la cosa brutta sarebbe solo sempre usare future o solo sempre usare core.async.

👍 4
richiardiandrea15:06:22

Son d'accordo che uno non esclude l'altro!

reborg09:06:56

Chiaro che se uno ragiona in termini di event streams avrebbe vita difficile senza core.async e il suo modello di callbacks

Andrea Imparato09:06:42

quindi per ogni evento un canale diverso? @reborg

Andrea Imparato09:06:07

sì beh fare event stream con solo future la vedo molto + a basso livello

mdallastella09:06:54

Per assurdo io personalmente trovo molto più chiaro core.async... un problema su tutti, le exception che all'interno delle future rimangono lì finché non deferenzi

reborg09:06:45

E non vedo nessun problema con questo approccio. Volevo solo ricordare che agent fornisce alcune primitive tipo !

reborg09:06:33

Comunque e’ in stile callback hell, non e’ che scala molto bene oltre un certo limite

mdallastella10:06:22

Sì, è un altro punto per cui non mi piacciono future/`promises`

reborg10:06:45

comunque dipende da cosa ci devi fare. Parallelismo e multi-threading in generale non hanno bisogno di core.async, almeno non in principio

☝️ 4
mdallastella10:06:08

Certo, come dicevi tu, è brutto usare sempre e solo future o sempre e solo core.async

reborg09:06:56

Piu’ che altro ti troversti in callback-hell (e per di piu’ ogni callback ha bisogno di un vero blocking thread)

Andrea Imparato09:06:15

conoscete magari qualche progetto che implementa async “bene”?

mdallastella09:06:55

Il punto debole di core.async è la documentazione, imho

reborg09:06:52

Si, un libro dedicato ci starebbe tutto ed avrebbe anche le sue 300 pagine

mdallastella09:06:40

@andrea.imparato non saprei indicarti un progetto specifico

Andrea Imparato11:06:44

@reborg puoi scrivere tu il libro su async no? 🙂

reborg11:06:42

Certo, anche uno su core.spec. Fosse per me, scriverei anche full-time. C’e’ un piccolo problema pero’…

Andrea Imparato11:06:57

eh immagino 🙂