
Александр
22.12.2017
08:03:25
rdd
резюме драйвен девелопмент

Igor
22.12.2017
08:04:19

A
22.12.2017
08:04:42

Google

A
22.12.2017
08:04:49
только для этого

Gleb
22.12.2017
08:19:29
я не против новых технологий, но в 99% случаев есть более насущные проблемы (криво написанный/неработающий код, например)

Oleg
22.12.2017
08:55:41
И снова про вебсокеты
Если у меня в приложении уже есть акторы (вебсокет клиент должен быть в одном из них), нужно ли мне создавать ещё одну систему акторов для akka-streams?

Denis
22.12.2017
08:57:16
нет
одна система на приложение

Oleg
22.12.2017
08:59:55

Denis
22.12.2017
09:00:26
можешь явно передать в ActorMaterializer()(system)
можешь cделать implicit

Oleg
22.12.2017
09:22:31
Ещё вопрос: можно ли получить materializer из context?

Nikita
22.12.2017
09:23:30

Oleg
22.12.2017
09:24:45

Nikita
22.12.2017
09:27:21
В некоторых случаях да

Google

Denis
22.12.2017
09:28:36
https://stackoverflow.com/questions/43549268/should-i-share-the-materializer-instance-or-always-create-a-new-one-when-needed

Oleg
22.12.2017
09:38:20
спасибо, посмотрел исходный код и разобрался

Denis
22.12.2017
09:39:54
??

Artem
22.12.2017
10:10:16
коллеги а почуму Slic никакой ошибки не выдает при добавлениии данных в базу ( += ) хотя на сервере база упала. И какаято хрень должна былы произойти. Может реально данные, по умолчанию, не сбрасывабтся в БД а хранятся в кэше? Мож ещё какую настройку включить надо?

_
22.12.2017
10:12:55
Mysql?

Artem
22.12.2017
10:21:40
oracle

_
22.12.2017
10:22:56


Artem
22.12.2017
10:32:00
class ClientData(tag: Tag)
extends Table[
(Long, String, String, String, String, Timestamp)](
tag,
"CLIENT_DATA") {
def id =
column[Long]("ID", O.PrimaryKey, O.AutoIncSequenceName("S_CLIENT_DATA"))
def firstName = column[String]("FIRST_NAME")
def lastName = column[String]("SUR_NAME")
def patrName = column[String]("PATR_NAME")
def passport = column[String]("PASSPORT")
def birthDate = column[Timestamp]("BIRTHDATE")
def * = (id, firstName, lastName, patrName, passport, birthDate)
}
val ClientData = TableQuery[ClientData]
val name = s"0заг"
val surname = s"1Заглушка"
val newId = sql"""select CLIENT_DATA.nextval from dual""".as[(Long)]
val nL = Await.result(db.run(newId), 1 second)(0)
ClientData += (
nL,
name ,
surname,
"",
"1234123456",
Timestamp.valueOf("1988-12-31 00:00:00.0")
)

Aliaksandr
22.12.2017
10:35:17
db.run(ClientData += ...)

Artem
22.12.2017
10:44:07

Aliaksandr
22.12.2017
10:46:37
Не за что и Await, не в тестовых целях и кроме некоторых кейзов, не рекомендуется использовать

Artem
22.12.2017
10:47:12
Да, я пока тестю.

Igor
22.12.2017
11:35:01
Очередной глупый вопрос, а что представляет из себя side-effect (F[_]) в fs2 и как, собственно, на псевдокоде будет выглядеть кастомный сайд эффект?

Daniel
22.12.2017
11:40:30

Igor
22.12.2017
11:40:41

Alexey
22.12.2017
11:40:57
это HKT

Igor
22.12.2017
11:41:04
Если я вообще правильно понял, что это сайд эффект, конечно.

Daniel
22.12.2017
11:41:55
rob-norris.jpg
https://youtu.be/po3wmq4S15A

Igor
22.12.2017
11:42:46
спасибо

Google

Oleksandr
22.12.2017
11:51:19
а есть способ сделать sealed[mypackage] ?
основная хотелка — проверка на exhaustive pattern matching, чего private[...] не дает

Daniel
22.12.2017
11:53:39

Alexey
22.12.2017
11:53:42
private[] sealed не даёт? Оо

Oleksandr
22.12.2017
11:54:14

Oleg
22.12.2017
11:57:17

Nikolay
22.12.2017
11:57:31
Олега ответ

Oleksandr
22.12.2017
11:58:13
foo => private[foo] trait A
foo.bar => object O1 extends A
foo.baz => object O2 extends A
a match { case O1 => ??? }
не выдает ворнинга

Alexey
22.12.2017
12:00:22
что такое a?

Daniel
22.12.2017
12:00:50
что аж толсто

Oleksandr
22.12.2017
12:01:23
(что-то типа A)

Oleg
22.12.2017
12:02:45

Oleksandr
22.12.2017
12:03:15
http://scala.co.uk/events/muay-thai-kickboxing-eliminators/ ?
интересная мысль)

Alex
22.12.2017
12:04:09
в fs2 на F по моему ограничений нет кроме кайнда

Oleg
22.12.2017
12:04:25
trait A{
def eliminate[T](o1 : => T, o2: => T, c3: C3 => T, ...): T
}

Alex
22.12.2017
12:04:37
просто тайплевел функция от одного аргумента, если по идрисовски

Google

Oleksandr
22.12.2017
12:05:37

Oleg
22.12.2017
12:05:56
нет, ты даже не представляешь что такое работать за компилятор

Alexey
22.12.2017
12:06:17
писать код в макросах?

Oleg
22.12.2017
12:06:33
писать на байткоде
ну или на джава тоже сойдёт
дабл кек

Admin
ERROR: S client not available

Alexey
22.12.2017
12:07:09
да так компилятор скалки точно не будет напрягаться

Vladislav
22.12.2017
12:25:12
Друзья, а почему Long при делении на Float автоматически во Float не переводится ?
val time: Float = System.currentTimeMillis() / 1000
overloaded method value / with alternatives:
[error] (x: Float)Float <and>
[error] (x: Long)Long <and>
[error] (x: Int)Long <and>
[error] (x: Char)Long <and>
[error] (x: Short)Long <and>
[error] (x: Byte)Long
[error] cannot be applied to (Double)
в руководстве пишут что должно переводить автоматически:
https://learnxinyminutes.com/docs/scala/

Aleksei
22.12.2017
12:28:55
результат - Double

Vladislav
22.12.2017
12:29:53
А, тю, черт, я и не знал что такой тип бывает )
Спасибо

Alexey
22.12.2017
12:29:54
автокаста нет

Oleg
22.12.2017
12:32:20
придумай сюбе скалу

MIkhail
22.12.2017
12:35:03
Коллеги, привет!
Подскажите пожалуйста, в чем отличие в Slick Future[List[T]] и DBIO[List[T]] ? Спасибо

Alexander
22.12.2017
12:37:47
DBIO - это описание действия, а не само действие

Oleg
22.12.2017
12:37:58
Всем известно, что слик говно, и я его не знаю, но предположу, что это лифченный набор действий, которые при переданным данным о подключении готовы сгенерировать тебе Future

Google

Alexander
22.12.2017
12:37:58
pure типа
слик классный

MIkhail
22.12.2017
12:38:37

Oleg
22.12.2017
12:38:42
какая-то аппликативо или монадо-подобная

Alexander
22.12.2017
12:39:07
DBIO - это MonadError

Oleg
22.12.2017
12:39:08

Alexander
22.12.2017
12:39:38
ну да

Andrey
22.12.2017
12:40:47

Oleg
22.12.2017
12:40:49
Т.е. где-то внутри это скорее всего чото типа ридер-манатки
Session => Future[A]

MIkhail
22.12.2017
12:41:07
понятно, спасибо!

Alexander
22.12.2017
12:41:23
https://github.com/RMSone/slick-cats/blob/master/src/main/scala/com/rms/miu/slickcats/DBIOInstances.scala

Igor
22.12.2017
14:39:35
Спасибо за видео выше, оно, в отличии от строчки кода для проверки моих предположений кас-но F[_] в Stream, не помогло, но принесло эстетическое удовольствие. Вопрос ближе к теме — правильно ли я понимаю, что F[_] в fs.Stream — абсолютно произвольная обертка вида:
trait Ex[O] {} к которой никаких требований не предъявляется, и которая служит только для определения формата передаваемых данных по стриму? Если так — то в чем глубинный смысл делать разделение на F[_] и O, если можно было, кхм, сделать передачу чего угодно?

Vladislav
22.12.2017
14:46:28
что-то не могу нагуглить, а KeyValue класс где-то есть в стандартной библиотеке джавы ?
(мне только всякие javafx animation попадаются)

Alexey
22.12.2017
14:47:33

Vladislav
22.12.2017
14:48:06
что-то типа этого. Это было описано в руководстве:
https://kafka.apache.org/10/documentation/streams/developer-guide/dsl-api.html