@scala_ru

Страница 924 из 1499
Andrey
06.09.2017
11:11:20
кек, у меня рукописный плагин, собранный под 2.10
Так у меня тоже был под 2.10 Я в нем просто поменял версию сбт и все)

Daniel
06.09.2017
11:11:53


Wystan
06.09.2017
11:44:29
Мужики, а в какой программе/сайте быстрей всего нашлепать дизайн для андроида? типа вот эта менюх, жмак сюда, падажжи какие нотификейшены...

Google
Wystan
06.09.2017
11:52:40
там надо какой-то скетч или фотошоп поставить. не знаю что это

Oleg
06.09.2017
12:04:42
скетч - это какое макоёдский бред на тему пайнта

вроде у всех дизайнеров он самообразуется

Alexandr
06.09.2017
12:09:19
Oleg
06.09.2017
12:10:01
будто что-то плохое...
У меня не хватает квалификации здесь, чтобы грамотно потоксифицировать

Nikolay
06.09.2017
12:11:33
Ниосилятор скетча?

Daniel
06.09.2017
12:19:43
так и подмывает для бота сделать дополнение с расчетом токсичности сообщества и рейтинг лидеров

осталось понять как классифицировать токсичность

Oleg
06.09.2017
12:22:59
Ниосилятор скетча?
Я? Неосилятор дизайна и всего прекрасного в этом мире. К примеру, продукции Apple

folex
06.09.2017
12:23:52
осталось понять как классифицировать токсичность
можно сделать ему команду /thatwastoxic, и последние N сообщений считать токсичными. За пару лет глядишь и научится чему-нибудь.

Oleg
06.09.2017
12:25:14
или форвардить боту, чтобы не засирать чат

Google
folex
06.09.2017
12:26:21
можно действительно в реплай писать, но вот свою оценку ставить страшно, у людей плохо с такими вещами

Daniel
06.09.2017
12:27:35
непонятные фичи, выглядит как задача для дипленинга #buzzword

Андрей
06.09.2017
12:58:23
Оценка тоже может быть токсичной

Wystan
06.09.2017
12:58:42
если кому понадобится, то www.fluidui.com - вполне ок чтобы нарисовать пару страничек и будешь у мамы дизайнером

Oleg
06.09.2017
13:00:50
» Переключил на sbt 1.0.1 » Получил NPE во время publish » Переключил обратно

Alex
06.09.2017
13:01:36
?

Oleg
06.09.2017
13:02:19
во аунтентикейшн внутри okhttp3

gigahorse stronk

folex
06.09.2017
13:55:16
мамчкин

KrivdaTheTriewe
06.09.2017
14:40:17
@rockjam регаться на хакатон вкшный будем?

Alex
06.09.2017
14:54:11
object Main { def main(args: Array[String]): Unit = { val `?` = "cool string" println(s"?: ${`?`}") } }

оказывается можно emoji в скала-коде юзать

KrivdaTheTriewe
06.09.2017
14:54:47
emojination

Alex
06.09.2017
15:01:49
ну я думал, что это фотошоп ?

оказывается такое действительно можно сделать ?

Alex
06.09.2017
17:02:00
вы так говорите словно препроцессоры вчера придумали

IOCCC вон с 1984 года проводится

Google
hohserg
06.09.2017
18:16:57
Всем привет. Можно ли для мап из стандартной библиотеки задать какой-то кастомный способ нахождения значения по ключу? Например, хочу положить в мапу ключ - диапазон от 0 до 10, а значение - "test". Как мне получить Some("test") от вызова map.get(1) ?

Nick
06.09.2017
18:18:38
Сделать 10 путов

hohserg
06.09.2017
18:20:28
Нет, это не подойдет

Bulat
06.09.2017
18:21:55
кастомный способ задать нельзя. А в этом случае можно что-то накодить с двумя мапами: NavigableMap для диапазонов и обычной мапы для значений (например, в качестве ключа взять нижную границу диапазона).

hohserg
06.09.2017
18:22:13
У меня структура: Map[String,Map[Int,String]], и мне нужно, например, вставить в нее "test" по двум ключам: "key1" и любой Int. Не вставлять же от -max_int до max_int

Спасибо, Булат

Nikita
06.09.2017
18:30:56
дефолтный гет определи кастомный

там можно любую логику написать внутри)

я имею ввиду withDefault

Darkhan
06.09.2017
19:30:04
У меня структура: Map[String,Map[Int,String]], и мне нужно, например, вставить в нее "test" по двум ключам: "key1" и любой Int. Не вставлять же от -max_int до max_int
если можно использовать другую имплементацию, то RangeMap решает эту проблему https://google.github.io/guava/releases/16.0/api/docs/com/google/common/collect/RangeMap.html

hohserg
06.09.2017
19:32:55
Всем спасибо за ответы. Но че-то все ходили вокруг да около и не писали сути: я же могу вторую мапу, которая выполняет роль второго ключа заменять на нужную реализацию когда требуется.

Daniel
06.09.2017
19:45:16
соглашусь, требования туманны, трудно ответить конкретно

Vladimir
06.09.2017
19:50:06
Господа, не оправдывайтесь

Aleksei
06.09.2017
19:50:11
Я так понимаю вместо набора ключей в мапе иметь прямую поделённую точками на определенные отрезки, где каждый отрезок будет иметь одно значение

Но мы ж не одимпиадники, мы круды пишем

Bulat
06.09.2017
19:57:42
в скале все иммутабл, так что только CRD

KrivdaTheTriewe
07.09.2017
00:43:26
ребят смотрите что завезли в скайп

Google
KrivdaTheTriewe
07.09.2017
00:43:28
https://www.skype.com/en/interviews/

Alex
07.09.2017
03:58:53
ребят смотрите что завезли в скайп
Так вот почему Майкрософт интернам не отвечает))

Систему допроса пилили

Oleg
07.09.2017
04:10:43
Всем спасибо за ответы. Но че-то все ходили вокруг да около и не писали сути: я же могу вторую мапу, которая выполняет роль второго ключа заменять на нужную реализацию когда требуется.
Это нифига не встроенная коллекция ни в каком языке. Я понял задание так: есть тип элементов E ( у тебя String) есть упорядоченный тип индексов I : Order ( у тебя Int) Нужно реализовать тип данных RangeMultiMap сокращённо RMM и операции для него : addRange(E, I, I): RMM[E,I] Добавить элемент для диапазона readUnion(I, I): Set[E] найти все элементы, встречающиеся хотя бы раз на диапазоне readIntersection(I, I): Set[E] найти все элементы встречающиеся непрерывно на протяжении всего диапазона

Всем спасибо за ответы. Но че-то все ходили вокруг да около и не писали сути: я же могу вторую мапу, которая выполняет роль второго ключа заменять на нужную реализацию когда требуется.
Если делать эффективно, тебе понадобится interval tree на базе какого-нибудь Btree, RBtree или там FingerTree с моноидальным значением в узлах типа (I, I, Set[E], Set[E]) - левая и правая границы интервала, объединение и пересечение. Тогда все три операции реализуемы за логарифм, плюс можно добавить getIntervals(E): Seq[(I, I)] за O(k * ln(n)), где k - количество непересекающихся интервалов, включающих искомый элемент

Nikolay
07.09.2017
09:25:01
кто-нибудь встречался с такой ситуацией в circe, когда часть полей с значением null нужно из json-а убрать, а какие-то оставить? Printer позволяет сделать или dropNullKeys, или оставить

можно через Configuration сделать, как мне кажется

Юрий
07.09.2017
09:27:33
Насколько я знаю, такое можно сделать только кастомным принтером

мне вообще не очень нравится политика circe в плане печатанья нулов

Алексей
07.09.2017
09:28:53
Или кастомным сериализатором для моделей, который будет содержать логику отбрасывания полей

Oleg
07.09.2017
09:30:01
Насколько я знаю, такое можно сделать только кастомным принтером
+1 val printer = Printer.noSpaces.copy(dropNullValues = true) x.asJson.pretty(printer)

Алексей
07.09.2017
09:30:56
да, но дропнет все нулы, а там нужно по условию где-то дропнуть где-то нет

Oleg
07.09.2017
09:31:19
аааааа

Алексей
07.09.2017
09:32:10
самое просто именно в момент сериализации решать, где дропнуть поле, а где оставить, а принтер использовать стандартный

Oleg
07.09.2017
09:33:07
implicit val fooEncoder = deriveEncoder[Foo].mapJsonObject(_.filter(! _._2.isNull))

Oleg
07.09.2017
09:43:47
folex
07.09.2017
10:07:20


Nikolay
07.09.2017
10:12:28
в промежутках между примерами помощь бога никогда не будет лишней

Google
Evgeniy
07.09.2017
14:19:15
https://github.com/scala-native/scala-native/releases/tag/v0.3.3

hohserg
07.09.2017
19:03:15
Oleg, спасибо большое. Это очень в тему, но не ответ на вопрос(видимо, я действительно слишком тунанно спросил). Спрошу еще раз и дам ответ сам(т.к. понял, не без помощи чата, кнч). У меня стояла такая задача: есть два ключа и одно значение, поэтому я сделал так: Map1[K1,Map2[K2,V]], но K2 могло быть не одним значением, а еще и интервалом. И мне изначально показалось, что это можно(и разумно) делать через реализацию K2. Но потом до меня дошло ,что это легче(и кажется, единстренный возможный путь) сделать через реализацию Map2

Страница 924 из 1499