
Oleg
09.02.2018
13:08:47
или рассматривают
я не с++, я что-то в википедии читал

Alex
09.02.2018
13:11:21
я так понимаю по крестам тут только cher zaude рубит

sherzod
09.02.2018
13:19:41
Это пока моноид
https://gist.github.com/sherzodv/3e9c6b4d7d7df07cf7ecaf382edac999

Google

Alex
09.02.2018
13:21:06
> моноид
> HK scala

Oleg
09.02.2018
13:21:33
просто форвардну для токсичности
> моноид
> HK scala

sherzod
09.02.2018
13:21:43
ну да счас надо тип с дыркой
А вот функтор
https://gist.github.com/sherzodv/3e9c6b4d7d7df07cf7ecaf382edac999
Без лифта, очень зубодробильный синтаксис получается

A
09.02.2018
14:27:01
ребят, кто говорил что-то вроде "Для каждой задачи свой язык"?

Alex
09.02.2018
14:35:55
экклезиаст?

Oleg
09.02.2018
14:38:01
class list {
std::array<A, 10> impl;
10 элементов вполне хватит всем (с) Шер Гейтс

A
09.02.2018
14:41:24

Anton
09.02.2018
15:09:15
Коллеги, может есть у кого запись с SPb Scala Meetup 2018.1 ?

Daniel
09.02.2018
15:18:14
https://youtu.be/skzzgvbvRlY?t=5906

Google

Anton
09.02.2018
15:19:40

Александр
09.02.2018
15:32:02

Andry
09.02.2018
15:46:44
Организаторы поменялись?

Daniel
09.02.2018
15:58:30

Nikita
09.02.2018
16:32:31

Alexander
09.02.2018
17:00:49
Подскажите, как-нибудь можно из ReaderT[Result,A,B] получить обратно Reader[A,Result[B]]? Вообще хочу Either.left.flatMap.

Alexander
09.02.2018
17:01:07
Новые стикеры как раз для токсичных чатов :)

Nikolay
09.02.2018
17:01:52
Самый токсик

Oleg
09.02.2018
17:03:13

Alexander
09.02.2018
17:03:26

Oleg
09.02.2018
17:04:35
ReaderT[F, A, B] - это обёрнутая в Kleisli A => F[B]

Denis
09.02.2018
17:04:47
https://twitter.com/propensive/status/961991112750718976?ref_src=twcamp%5Eshare%7Ctwsrc%5Eios%7Ctwgr%5Eorg.telegram.TelegramHD.Share%7Ctwcon%5E7100%7Ctwterm%5E0

Oleg
09.02.2018
17:04:52
снять обёртку можно взяв аргумент run

Aleksei
09.02.2018
17:06:10
Ахахахахаха
Простите

Oleg
09.02.2018
17:06:44
но интересное развитие может получиться в рамках какого-то Generic, если юзать AnnotatedParam

Denis
09.02.2018
17:08:24
Да классная штука ) можно сделать спринг

Oleg
09.02.2018
17:11:21
Можно придумать всякие фичи для вещей типа Json - кодеров
В circe сейчас, к примеру дискриминатор в женерик можно задавать только через экстрас и через некий implicit Configuration
А так можно было бы
@discriminator("kind")
sealed trait Animal

Google

Denis
09.02.2018
17:11:32
Блин когда уже можно будет добвлять только нужные стикеры из пака

Nikita
09.02.2018
17:12:17

KrivdaAllStars
09.02.2018
17:14:48

Denis
09.02.2018
17:15:24
Сложна

Oleksandr
09.02.2018
17:19:34

Grigory
09.02.2018
17:22:38
баян

Denis
09.02.2018
17:37:13
https://www.reddit.com/r/scala/comments/7wdcms/on_performance_of_the_new_collections/?st=JDG7SDJC&sh=98de41b8

Oleg
09.02.2018
17:38:50

Nikolay
09.02.2018
17:42:29
а там сколько?
-700%
?

Oleg
09.02.2018
17:45:16
а там сколько?
там странно. Если я правильно прочитал есть билдер бэйзд - это как старые, только чутка переделанные и на них в нужных местах поставлены инлайны.
Они в среднем на 35% быстрее для вектрра
Но это, как я понял, инлайны подргнанные под бенчмарк
А вью-бейзд даже с подогнанными инлайнами медленнее

Daniel
09.02.2018
17:46:28
по разному на разных операциях
http://www.scala-lang.org/resources/img/blog/new-collections-performance-flatMap.png
ну и момент, что тестировали только вектор
автору доклада про новые коллекции посл выступления задали вопрос про то, будет ли deforestation
он сказал, что на ленивых коллекциях это теперь стало возможно, но займутся этим не скоро

Oleksandr
09.02.2018
17:48:32
а планируется какой-то глобальный (на одном наборе операций по коллекции) оптимизатор, типа спарковского ?

Alex
09.02.2018
17:48:47
это ж вроде петрашко пилил как раз

Google

Daniel
09.02.2018
17:48:50
в итоге там может быть хороший профит

Alex
09.02.2018
17:48:58
может в доччи и будет

Denis
09.02.2018
17:49:14

Daniel
09.02.2018
17:49:27

Alex
09.02.2018
17:49:50
ну линкер там по его словам типа обобщал блиц

Oleksandr
09.02.2018
17:50:04
сам-то он забил

Alex
09.02.2018
17:50:35
щас одерского спрошу

Daniel
09.02.2018
17:50:44
на той же конфе в Лондоне Петрашко обещал некую "бомбу" вскоре, но деталей не сказал, только понагонял тумана

Oleg
09.02.2018
17:50:55

Alex
09.02.2018
17:51:30
через варп ага

Oleksandr
09.02.2018
17:52:34

Oleg
09.02.2018
17:52:37
походу без линкера можно только стакать типы во вьюхах, а потом макросом всю эту лабуду сквошить в while, симулируя раст

Daniel
09.02.2018
17:52:55
More significant performance improvements can be achieved by using different data structures. For instance, we recently merged a completely new implementation of immutable Set and Map based on compressed hash-array mapped prefix-trees. This data structure has a smaller memory footprint than the old HashSet and HashMap, and some operations can be an order of magnitude faster (e.g. == is up to 7x faster).

Oleg
09.02.2018
17:53:07
наверняка же есть такой либ

Oleksandr
09.02.2018
17:53:32

Daniel
09.02.2018
17:54:01
наверняка же есть такой либ
а как в хацкелле тот же deforestation сделан?
библиотека с вектором это умеет, значит это не прибито к компилятору

Alex
09.02.2018
17:54:42
падажите а разве старые не были уже на HAMTах?
а, это CHAMP

Google

Oleg
09.02.2018
17:55:37

Daniel
09.02.2018
17:55:40

Alex
09.02.2018
17:57:43
для нормального фюжена нужна линейщина как известно
www.cse.chalmers.se/~josefs/publications/vectorcomp.pdf
меня правда смущает шо в этой статье не интуиционистское а прям весь CLL

Daniel
09.02.2018
18:02:28
я только https://www.microsoft.com/en-us/research/wp-content/uploads/2016/07/deforestation-short-cut.pdf читал
зато для простых смертных и вдохновляюще =)

Alex
09.02.2018
18:05:02
гибонсовщина с фолдами?

Aleksei
09.02.2018
18:06:25
нет, фендеровщина с флойд росами! =)

Daniel
09.02.2018
18:08:11
но пейпер старенький, 90х годов

Alex
09.02.2018
18:12:28
у Jeremy Gibbons была пачка статей про жонглирование фолдами
тоже в начале-середине 90х
сейчас это всё абстрагировалось в Datatype-Generic подход, типа тех деревьев что я днем кидал
http://www.cs.ox.ac.uk/people/publications/date/Jeremy.Gibbons.html