
Nikita
31.10.2016
09:56:07
https://github.com/meln1k/reactive-telegrambot
правда неплохо бы ее обновить когда-нибудь будет

Mikhail
31.10.2016
09:59:45
а не ботное апи к телеграму кто-нибудь видел приличное и не старое?

Aleksey
31.10.2016
10:06:03

Google

Lev
31.10.2016
10:07:40
если бы возникла необходимость, запилить-то недолго

Mikhail
31.10.2016
10:08:22
так мне же не ботное надо, а обычное апи надо)

Lev
31.10.2016
10:08:40
меня больше сам DSL интересует. чтобы flow нормальный был и inline keyboards по-человечески работали
сейчас узнаю, опенсорсное ли уже)
нет, не релизили
и с этим была беда — в андроид-клиенте перешли на си, всё остальное из скалы использовать неудобно

Mikhail
31.10.2016
10:19:05
понятно, придется тоже самому написать) спс

Lev
31.10.2016
10:19:51
не самое приятное занятие, с их-то сериализацией boolean
если нет высоких требований к производительности, лучше сразу тащить scodec

Denis
31.10.2016
10:20:27
> в андроид-клиенте перешли на си
O_o

Lev
31.10.2016
10:20:49
только для сетевого стэка

KrivdaTheTriewe
31.10.2016
10:22:32

Google

KrivdaTheTriewe
31.10.2016
10:22:41
Продукт какой

Igor
31.10.2016
10:22:48
https://github.com/igorynia/TelegramBotApi начинал писать

Nikolay
31.10.2016
10:24:06

Lev
31.10.2016
10:24:15
=(

Nikolay
31.10.2016
10:26:23
Уффф

Lev
31.10.2016
10:27:35
вообще, с ними надо поговорить. сами они страницу Bot API генерируют, судя по всему

KrivdaTheTriewe
31.10.2016
10:27:46

Lev
31.10.2016
10:28:43

Aleksey
31.10.2016
11:39:21
Кто поедет на http://fpconf.ru ?

Mikhail
31.10.2016
11:40:29
слет мазохистов)
по логотипу все ясно ?

Vladimir
31.10.2016
11:41:53
я был в 2015, отличная конфа кстати.

Mikhail
31.10.2016
11:41:57
там нет программы выступлений?

Vladimir
31.10.2016
11:42:08
видимо еще рано

Aleksey
31.10.2016
11:42:22
Да они только-только заанонсили, что сама конфа будет.
В прошлый раз там был Кметт.

Denis
31.10.2016
12:12:27
Кто нибудь делал интероп из скалы со спринговым сервис дискавери через ZK ?
:)

Google

Dmitry
31.10.2016
12:55:02
а так я бы сходил.. правда у черта на рогах опять :(

Oleksandr
31.10.2016
13:34:03
а есть для скалы сторонние либы коллекций?
например, immutable.Map весьма неэффективная

Vladimir
31.10.2016
13:38:21
dogs, но хз как там с производительностью

Denis
31.10.2016
13:38:37
scala blitz ))

Vladimir
31.10.2016
13:38:43
Подозреваю, если мапа стала боттлнеком, не грех и мутабельную поюзать

Igor
31.10.2016
13:39:19

Oleksandr
31.10.2016
13:40:03
apply, get, getOrElse, ничего особенного
в Map все через get работает, а он дергает Option всегда
бенчмарки недавно у lihaoyi были

Igor
31.10.2016
13:42:25
http://www.lihaoyi.com/post/BenchmarkingScalaCollections.html нашел

Oleksandr
31.10.2016
13:42:56
угу, оно слегка сомнительно по методике проверки, но все же

Mikhail
31.10.2016
13:50:08
а ты действительно столкнулся с тем, что у тебя это стало отнимать сколь либо значимую часть процессорного времени, которое ты мог бы потратить более разумно? или очередная оптимизация на спичках?

Oleksandr
31.10.2016
13:50:28
второе
ну и просто не люблю на ровном месте терять производительность
пока это не на рефакторинг кода, а для размышлений на будущее

Mikhail
31.10.2016
13:53:03

Oleksandr
31.10.2016
13:53:22
ну и это очень плохо

Daniel
31.10.2016
13:53:39
"терять" - это когда было быстро, а стало медленно)

Oleksandr
31.10.2016
13:54:13
не думай о милисекундах свысока)

Google

Mikhail
31.10.2016
13:54:16
а разве не так? на ассемблере быстро было, теперь все кругом медленно

Oleksandr
31.10.2016
13:54:48
мелочь к мелочи складывается

Mikhail
31.10.2016
13:56:01
а как ты по значениям массива итерируешь в скале?

Igor
31.10.2016
13:56:12
на счет аллокации Option'а – JIT вполне может скаляризовать операцию

Oleksandr
31.10.2016
13:56:15
вопрос не в спичках, а в том, что сознательно используется менее эффективный способ
надо знать меру

Daniel
31.10.2016
13:56:55
менее эффективный по сравнению с чем?

Mikhail
31.10.2016
13:56:55

Oleksandr
31.10.2016
13:57:05

Mikhail
31.10.2016
13:57:14
ой, а что же сразу такой медленный способ то

Igor
31.10.2016
13:57:29
еще вопрос сколько элементов в мапке

Oleksandr
31.10.2016
13:57:29

Daniel
31.10.2016
13:57:48
так j.u.HashMap мутабельный

Mikhail
31.10.2016
13:57:50
почему не while ? он намного быстрее. ты же с фором на ровном месте теряешь спички коробками

Oleksandr
31.10.2016
13:58:09
теряю
насчет намного быстрее -- это совсем ге так

Igor
31.10.2016
13:58:50
на моей практике основные проебы – архитектурные. Неоптимальные алгоритмы или холдеры данных можно всегда соптимизировать, подменив реализацию

Oleksandr
31.10.2016
13:59:02
там куда меньше разница, чем между MMap и Map

Daniel
31.10.2016
13:59:24
@ivovk плюсую

Oleksandr
31.10.2016
13:59:36

Google

Oleksandr
31.10.2016
13:59:53
им-то надо думать про спички

Mikhail
31.10.2016
14:00:03

Oleksandr
31.10.2016
14:00:10
jit

Daniel
31.10.2016
14:00:50
@dveim в стдлибе есть две мапы: scala.collection.immutable.Map и scala.collection.mutable.Map
если хочется "как j.u.HashMap" - используй мутабельную
но вообще тут речь не о том, что "сознательно используется менее эффективный способ", а том, что "сознательно используется immutable map"

Igor
31.10.2016
14:06:38
иммутабельность сама по себе менее производительная. case class'ы тоже дают оверхед по памяти и производительности. Я помню, как пришел с Java в Scala сначала переживал по-поводу этого всего. А потом перестал :)

Mikhail
31.10.2016
14:07:07
вот кстати да, почему-то Олександр завел речь про то, что Option.get это прям такие потери, что не хотелось бы на ровном месте так много терять, а вот про накладные расходы иммутабельных структур - как-то совсем забыл видимо)

Wystan
31.10.2016
14:40:59
dogs, но хз как там с производительностью
Мелкая и стремная. Там из коробки всякие конвертации из list в range не работают, хотя документация утверждает обратрное. Но начинание хорошее, нужны усиленные коммиты
Даже паттерн матчинг на a :: b :: tail нельзя написать.

Daniel
31.10.2016
14:42:27
естественно, ведь :: и ::: приезжают из Predef для листа из стдлиб
однако уже после этого "dogs.List is invariant instead of covariant" желание контрибьютить туда отпало

Aleksey
31.10.2016
14:43:30

Daniel
31.10.2016
14:44:22
https://stew.github.io/dogs/tut/list - не нашёл объяснения

Wystan
31.10.2016
14:46:10

Daniel
31.10.2016
14:47:41

Aleksey
31.10.2016
14:53:22

Nikolay
31.10.2016
14:55:01
А вообще есть возможность расширить существующий predef, не заменяя его полностью?