Fork me on GitHub
#clojure-italy
<
2017-10-24
>
nilrecurring05:10:32

@reborg c'è stato un talk bellissimo riguardo la fusion a ClojuTRE di quest'anno (in realtà era la Small FP Conf dentro ClojuTRE)

reborg09:10:20

@nilrecurring pensi che ci sia qualcosa da estrapolare per clojure dai stream fusion?

nilrecurring10:10:55

Ci sono state un po’ di domande in stile “ma che differenza c’è con i transducers?”

nilrecurring10:10:31

Il punto della fusion è che il compilatore di occupa di riscrivere effettivamente il codice (nel talk è spiegato molto bene)

nilrecurring10:10:27

E le diverse astrazioni che coinvolgono uno “streamable” possono essere adattate alla fusion

nilrecurring10:10:25

Non credo sia lo stesso per i transducers?

reborg11:10:16

non c'e' riscrittura (quella sarebbe una macro), e' pura e semplice astrazione funzionale. Il pattern OO piu' vicino ai xducers e' chain of responsibilities (per intenderci)

reborg11:10:38

cmq grazie del link, provo ad addocchiare in serata

reborg12:10:01

prima volta che sento parlare di vaadin... sono l'unico?

nilrecurring12:10:15

L’ho sentito solo un’altra volta, e non ricordo dove. Ne senti parlare bene o male? 😄

reborg12:10:37

per ora non ho idea 🙂 ho notato che la console di datomic l'hanno scritta con quello

reborg12:10:53

mi ricorda i miei primi esperimenti con swing da vedere :

skuro15:10:22

[troll]Vaadin: prendi l'anima di GWT, vendila al demonio e costruiscici il marketing attorno [/troll]

richiardiandrea16:10:37

ciao a tutti, la fusione e' come quella di Dragonball? Connetto le dita e si viaggia 😄

reborg16:10:49

Stream fusion e' semplicemente un sistema automatico di deforestazione basato su trasformazioni di uguaglianza, qual e' il problema? 🙂

richiardiandrea16:10:12

volevo chiedere qui se qualcuno di voi usa the "Unified Log" pattern, come Kafka, ma senza Kafka 😄

richiardiandrea16:10:34

non voglio usare Java e sto cercando un "append-only" database

nilrecurring16:10:21

Temo che Kafka sia l’opzione più viabile per avere unified-log ultimamente

nilrecurring16:10:05

Noi stiamo pensando di usare Google Cloud PubSub, ma tiene il log solo per 1 mese

richiardiandrea16:10:06

stiamo pensando di fare una cosa simile in AWS...senza pero' deploy di Kafka, non ci piace Java...

richiardiandrea16:10:37

un mese non e' male, Kinesis mi pare tenga per una settimana

nilrecurring16:10:01

Quindi non va proprio bene per “unified log”, a meno che non hai un consumer che scrive tutto su un bucket così non perdi nulla

nilrecurring16:10:17

Però se hai poi necessità di andarti a vedere il log di un po’ di tempo fa, diventa lento

nilrecurring16:10:23

Quindi boh, dipende dallo use case

nilrecurring16:10:33

afaik @skuro sta usando Kafka con successo

reborg17:10:42

c'e' stata chiacchera di corridoio alla conj riguardante un possibile equivalente di kafka per clojuristi che non vogliono uno zookeper nel cluster

reborg17:10:48

il problema e' che non c'e'

richiardiandrea17:10:25

eh ho trovato un progetto in go in realta'

andrea.crotti17:10:27

Noi usiamo kafka pesantemente a funding circle

andrea.crotti17:10:52

È stata dura all'inizio ma adesso sembrano tutti content

andrea.crotti17:10:27

Con un po' di semplici wrapper si possono scrivere funzioni pure

reborg21:10:44

@nilrecurring talk un po' difficile per me, ma grazie per il link. Sembra giustificare l'ottimizzazione (stream fusion) per produrre codice componibile e allo stesso tempo garantire l'ordine dei side effects. E' un problema interessante, ma cosa ci fanno side effects in mezzo a sequence processing? Per usarli devo riscrivermi map e amici. Senno' uso librerie che li hanno dentro (e.g. conduit). Sembra che streamf sia esterno ad haskell. Rispetto a Clojure xforms, streamf mi sembra che richieda piu' commitment.

richiardiandrea22:10:17

@andrea.crotti non e' per le funzioni pure, stiamo proprio cercando di evitare JVM come la peste qui 😄