@scala_ru

Страница 725 из 1499
Nick
07.06.2017
09:56:00
ну у нас девопсы - больше админы, я как-то им помогаю, но они тож много чего делают

KrivdaTheTriewe
07.06.2017
10:48:49
как же изуродовали иконки в новой идее

Alex
07.06.2017
11:21:40
Опа - опа, сейчас Ник Гугочку захайрит :)

Dim
07.06.2017
11:28:16
Супер, я наконец увидел этого легендарного Ибрагима из Дубая, в группе @scala_jobs ))

Google
Alex
07.06.2017
11:28:31
да он и тут был

Dim
07.06.2017
11:29:43
платиновый работодатель
Да да, уже наслышан))

Kirill
07.06.2017
11:29:55
это сарказм?

Aleksei
07.06.2017
11:29:59
"отвечаю по два месяца"

KrivdaTheTriewe
07.06.2017
11:30:13
как обращать людей в скалу если они пишут на плюсах не вебсервисы?

Kirill
07.06.2017
12:51:24
Зачем? Это же не религия, а средство достижения целей. Будут цели - будут и аргументы

KrivdaTheTriewe
07.06.2017
12:52:27
Зачем? Это же не религия, а средство достижения целей. Будут цели - будут и аргументы
чтобы они писали библиотеки, которыми я буду пользоваться

Kirill
07.06.2017
12:53:02
Выглядит так, как будто у тебя есть разраборабы :)

KrivdaTheTriewe
07.06.2017
12:54:10
Выглядит так, как будто у тебя есть разраборабы :)
чем наши ряды шире, тем больше библиотек. Я надеюсь кто-нибудь и матрицы для скалы сделает(быстрые)

Alexey
07.06.2017
12:57:47
А nd4s не быстр?

KrivdaTheTriewe
07.06.2017
12:58:28
А nd4s не быстр?
ndj4 медленен

Google
Alexey
07.06.2017
12:59:50
Но ведь lapack...

folex
07.06.2017
13:03:19
как обращать людей в скалу если они пишут на плюсах не вебсервисы?
Покажи им плюсы скалы. Перепиши библиотеку на скале в 2 раза быстрее чем они её написали например. Покажи удобность её расширения, покажи тайпсейфти. Ну и попробуй как-то снизить разницу в производительности до удобоваримой.

KrivdaTheTriewe
07.06.2017
13:08:39
я книжку от адрескоре кинул, надеюсь она убедит

Vladimir
07.06.2017
13:09:11
почта анаграмма от Одерский

KrivdaTheTriewe
07.06.2017
13:09:38
там на самом деле, примеры хорошие

и можно сразу после нее котов изучать

folex
07.06.2017
13:11:47
и можно сразу после нее котов изучать
лол, эдак ты плюсовиков не перетянешь, если только они сами не хотят сильно

чтобы "котов изучать" и вотэтовсё сначала должны проблемы появиться, которые эти коты будут решать

Alexey
07.06.2017
13:12:11
c++ -> cats ну ага, удачи

Andrew
07.06.2017
13:12:12
Но ведь lapack...
вероятно, картину портит JNI. но как по мне, проблема не в скорости даже, а в том, что то, что есть - (MXNet, MLLib) работает так себе.

Vladimir
07.06.2017
13:13:13
и можно сразу после нее котов изучать
у Жмилевского же есть примеры на плюсах в бложике

Nikolay
07.06.2017
13:19:24
а можно как-то без var-ов сделать так, чтобы в scalatest спека вернула результат, а не unit?

сейчас спека выглядит примерно так

class ResultSpec extends FlatSpec with ScalaFutures { behavior of "Service" var userId: Int = _ val serivce = new UserService() "create" should "return user id" in { val userId = serivce.create("rockjam").futureValue this.userId = userId } "update" should "change user name" in { serivce.update(userId, "jam") } }

Nick
07.06.2017
13:22:50
ты про in ?

Nikolay
07.06.2017
13:23:16
да

хотелось бы так

class ResultSpec extends FlatSpec with ScalaFutures { behavior of "Service" val serivce = new UserService() val userId: Int = "create" should "return user id" in { val userId = serivce.create("rockjam").futureValue userId } "update" should "change user name" in { serivce.update(userId, "jam") } }

ну, или наподобие

Nick
07.06.2017
13:23:29
вообще эт не правильно так писать

Google
Nikolay
07.06.2017
13:23:44
что именно не правильно?

Nick
07.06.2017
13:23:49
http://www.scalatest.org/user_guide/sharing_fixtures

Nikolay
07.06.2017
13:23:54
делать тесты зависимыми?

Nick
07.06.2017
13:24:05
тесты запусти в паралелле и все

увидишь)

folex
07.06.2017
13:24:11
А как мне в cats сделать вот такой код for { state1 <- func1() : Future[_] state2 <- func2(state1) state3 <- func3(state2) } yield f(state3) лучше? Я так понимаю через StateT можно как-то завернуть это?

Nikolay
07.06.2017
13:24:47
у меня выключен параллельный запуск тестов

Nick
07.06.2017
13:25:03
у меня выключен параллельный запуск тестов
ну вообще да, тесты должны быть максимально независимы

Nikolay
07.06.2017
13:25:08
в данном случае целесообразно описать один процесс

Nick
07.06.2017
13:25:24
ну и без параллельного запуска - это боль

Nikolay
07.06.2017
13:25:42
но вопрос был немного не в этом

Alexey
07.06.2017
13:27:47
по хорошему это должно быть в одном тесте

Alex
07.06.2017
13:28:04
http://luc-j-bourhis.github.io/blog/en/fast-matrix-multiplication/

Alexey
07.06.2017
13:28:06
так как тестируешь по сути один процесс

Nikolay
07.06.2017
13:36:07
так как тестируешь по сути один процесс
да, но куда проще будет поймать ошибку, если разделить на спеки

Alexey
07.06.2017
13:37:39
ну нифига подобного, вот например первый тест упадёт, потом запустится второй и упадёт с NPE, и что это даст?

Vadim
07.06.2017
13:38:07
ну сделай 2 теста - один чисто создает - второй создает и апдейтит) я вот сколько раз не морочился в таких тестах об этом - ниразу проблем от того или другого варианта не было)

Alexey
07.06.2017
13:41:05
если не хочется дублировать код, то class ResultSpec extends FlatSpec with Matchers with ScalaFutures { trait mocks { val serivce = new UserService() } trait creatingBehaviour extends mocks { val userId = serivce.create("rockjam").futureValue } behavior of "Service" "create" should "return user id" in new creatingBehaviour { userId shouldBe "userId" } "update" should "change user name" in new creatingBehaviour { serivce.update(userId, "jam") } }

Nikolay
07.06.2017
13:41:09
ну нифига подобного, вот например первый тест упадёт, потом запустится второй и упадёт с NPE, и что это даст?
по хорошему я бы сфейлил второй и все последующие тесты - нет особого смысла продолжать

Google
folex
07.06.2017
13:41:25
но вопрос был немного не в этом
Проблема в том что in регает тест, а ты хочешь от него аннотации к ошибке. Соответственно тебе нужно этот кусок функционала завернуть метод, и внутри него делать проверки, и указывать там правильные сообщения

Nikolay
07.06.2017
13:42:11
да, только видно на каком этапе он упал

folex
07.06.2017
13:42:30
folex
07.06.2017
13:44:38
Повторю вопрос, а то я как-то невовремя в прошлый раз спросил :) А как мне сделать вот такой код for { state1 <- func1() : Future[_] state2 <- func2(state1) state3 <- func3(state2) } yield f(state3) лучше? Я так понимаю через StateT в кошках можно как-то завернуть это?

Alex
07.06.2017
13:55:45
func1 >>= func2 >>= func3 map f не?

folex
07.06.2017
13:56:32
Это scalaz или кошки? Выглядит хорошо, как бы мне так же сделать?

Alex
07.06.2017
13:57:26
да че кошки, сделай просто алиас def >>=(f: A=>F[B]) = flatMap(f)

folex
07.06.2017
14:14:33
да че кошки, сделай просто алиас def >>=(f: A=>F[B]) = flatMap(f)
спасибо, поразмышляю еще над своими желаниям %)

Alex
07.06.2017
14:28:36
ну фор же твой развернется в func1.flatMap(state1 => func2(state1). ..

а как известно из лямбда калькулюса x => f(x) ~ f

Denis
07.06.2017
14:43:37
всегда когда вижу выражение up to isomorphism почему то вспоминается выражение up your ass :)

folex
07.06.2017
15:37:23
а как известно из лямбда калькулюса x => f(x) ~ f
я такого синтаксиса в лямбда калькулюсе не помню

хотя я оттуда уже ничего практически не помню, только интуиция осталась. Надо всё перечитывать :(

Nick
07.06.2017
16:46:30
Nikolay
07.06.2017
16:50:36
за fixtures спасибо

Nick
07.06.2017
18:54:03
А у нас тут есть гуру Эрланга?

KrivdaTheTriewe
07.06.2017
18:56:09
Google
KrivdaTheTriewe
07.06.2017
18:56:24
но там говорят , что все либо на скале либо на го

S
07.06.2017
18:57:05
Эликсир конфу поищи

A
07.06.2017
18:57:11
Привет, в кастомные (которые через def this) конструкторы возможно передавать implicit параметры ?

гуглёж не выдаёт ничего

folex
07.06.2017
19:02:05
а не получается? A

A
07.06.2017
19:02:11
неа

dentifier expected but 'val' found

folex
07.06.2017
19:03:23
покажи код

на крайний случай сделай apply

A
07.06.2017
19:06:17
http://scala-pastebin.herokuapp.com/snippets/15

Nikolay
07.06.2017
19:12:21
https://github.com/circe/circe-derivation . проходил мимо и заметил что в новом модуле circe используется скаловский code of conduct, а в основной репе circe - CoC тайплевела

Alexey
07.06.2017
19:15:16
http://scala-pastebin.herokuapp.com/snippets/15
такую инициализацию лучше в apply

A
07.06.2017
19:17:25
уговорили

Timur
07.06.2017
19:21:52
Можете ткнуть меня носом в что-нибудь хорошее для ознакомления с сабжем для java-кодера? В идеале что-то на подобие Learning Haskell for Great Good.

Daniel
07.06.2017
19:27:42
#learning - 1ый курс на курсере - Scala for Impatient - http://danielwestheide.com/scala/neophytes.html - Functional Programming in Scala

есть еще http://underscore.io/books/essential-scala/ но отзывов не слышал

Timur
07.06.2017
19:31:54
Благодарю)

guga
07.06.2017
19:32:46
а книгу одерски тут не жалуют? Scala for Impatient же по scala 2.8?

Daniel
07.06.2017
19:33:34
можно её, но у меня ощущения остались больше как от справочника

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