Fork me on GitHub
#clojure-italy
<
2018-05-04
>
reborg08:05:49

Questo fix di nth me l'ero perso:

user=> (clojure-version)
"1.9.0"
user=> (let [[h & r :as s] (sorted-set 12 14)] r)
(14)
user=> (clojure-version)
"1.8.0"
user=> (let [[h & r :as s] (sorted-set 12 14)] r)
UnsupportedOperationException nth

bronsa10:05:05

non e` un fix di nth

bronsa10:05:17

e` cambiato come funziona il positional destructuring

bronsa10:05:36

nth su sorted set non e` ancora supportato

reborg10:05:07

beh, buon per me, ne avevo bisogno per rendere meno verboso un algoritmo 🙂

bronsa10:05:48

casterei esplicitamente a una seq per evitare sorprese in futuro ;)

reborg10:05:19

ah no! ormai e' dentro, mica faranno una breaking change!

bronsa10:05:34

non e` behaviour supportato

bronsa10:05:37

e` undefined behaviour

bronsa10:05:43

son liberissimi di romperlo

reborg10:05:04

in che maniera un sorted-set non e' sequential, cosa cambia rispetto ad un vector?

andrea.crotti11:05:45

qualcuno va a Clojutre questo settembre?

andrea.crotti11:05:10

hanno spostato a Helsinki quindi forse un po' piu' comodo arrivarci

reborg12:05:11

Mo ricomincio a sottomettere talks e vedo se mi prendono da qualche parte. In tal caso, ci si vede la' 🙂

andrea.crotti14:05:34

hehe si dai sicuramente, a che conferenze sottometti a parte clojutre?

reborg14:05:14

mah, le solite... clojureX, EuroClo, magari anche la Conj...

reborg14:05:41

se c'e' qualche nuova conf degna di nota fammi sape'

bronsa17:05:45

@reborg i set sono strutture non ordinate, e non sequenziali per definizone

bronsa17:05:17

nth su un set non ha alcun significato

bronsa17:05:42

il fatto che il set sia sorted rende le cose un po' fuzzy

bronsa17:05:11

ma se ci pensi (esempio stupido)

bronsa17:05:11

(let [x (coll 1) c (count x)] (nth (conj x 1) c))

bronsa17:05:39

se coll e` una sequential questo funziona come ti aspetti

bronsa17:05:58

se coll e` sorted-set, non funzionerebbe (sorted <> ordered/sequential)