
Timothy
22.12.2016
11:24:05
гоу посоны, ща создам

Aleksey
22.12.2016
11:25:59

folex
22.12.2016
11:26:12
щ_Щ

Oleg
22.12.2016
11:26:24

Google

Oleg
22.12.2016
11:26:51
Обсуждает, удастся ли deep mind воссоздать легендарные стратегии в их новом старкрафт проекте

Aleksey
22.12.2016
11:27:03

Oleg
22.12.2016
11:27:07
data science, знаешь ли ключевая тема в мире scala сегодня

folex
22.12.2016
11:27:24
Надо сделать не чат для флуда, а чат для Q&A. И там устроить Q&A only. и заживем!

Mikhail
22.12.2016
11:27:34
тогда в случае с "Рашкой" - должно быть как с "Нигером". "Рашку" могут называть "Рашкой" только граждане "Рашки". Я гражданин)

Andy
22.12.2016
11:27:49

Aleksey
22.12.2016
11:27:52

folex
22.12.2016
11:28:14

Aleksey
22.12.2016
11:29:07

?Ivan
22.12.2016
11:32:22
К вчерашнему вопросу про имплиситы, можно ли как-то уменьшить кол-во boilerplate здесь https://scalafiddle.io/sf/7lc1jyv/0

Vasily
22.12.2016
11:34:42
Я дотнетчик

Daniel
22.12.2016
11:36:01
я уже полтора года как не пишу на дотнете, но у его хейтеров явно что-то невпорядке с головой

Andry
22.12.2016
11:36:22

Google

Anton
22.12.2016
11:36:25
любой джавист тайно хочет писать на c#, всё норм :)

Vasily
22.12.2016
11:37:52
Проблема в том, что каждый программист на определенном этапе развития хочет почуствовать себя элитой. Соответственно тут два пути - или получить признание от других (это сложный путь), или замочить других, чтобы быть выше их :)

Oleg
22.12.2016
11:37:54

Vasily
22.12.2016
11:38:02
Я не исключение :)

Daniel
22.12.2016
11:38:10

Oleg
22.12.2016
11:38:22
неСоСабельно, я бы выразился

Vasily
22.12.2016
11:39:00
Чисто дети

Aleksey
22.12.2016
11:39:02

Oleg
22.12.2016
11:39:32

Andry
22.12.2016
11:39:37
Коллеги я вот, что-то не пойму сакрального смысла в приведенном выше коде, для чего это надо?
implicit val listOfA: List[A] = new A{} :: Nil
implicit val listOfB: List[B] = new B{} :: Nil
implicit val listOfC: List[C] = new C{} :: Nil
implicit val listOfD: List[D] = new D{} :: Nil

Anton
22.12.2016
11:39:47

Oleg
22.12.2016
11:40:29

Vasily
22.12.2016
11:40:33

Mikhail
22.12.2016
11:41:19

Aleksey
22.12.2016
11:41:45

?Ivan
22.12.2016
11:42:02

Vasily
22.12.2016
11:42:19
Хммм.. я вспомнил, чего мне в f# не хватает. Как раз ::
Там [something]

Oleg
22.12.2016
11:42:40

Google

Daniel
22.12.2016
11:43:06
1 :: []
и в match можно использовать

Mikhail
22.12.2016
11:44:21
можно пример с оберткой имплиситов в класс? я пока не настоящий сварщик
class A[R <: MosregRequest, Response: JsonReader](implicit actorSystem: ActorSystem, materializer: Materializer, executionContext: ExecutionContext){
def stdRequestWithCookie(request: R): Future[(Response, HttpCookie)] = {
for {
...
} yield
}
def stdRequest(request: R): Future[Response] = {
stdRequestWithCookie(request).map(_._1)
}
}
val api = new A
api.stdRequest(request)

Oleg
22.12.2016
11:44:27

Andry
22.12.2016
11:44:51

?Ivan
22.12.2016
11:45:39

Mikhail
22.12.2016
11:46:23
можно. только тебе внутри обьекта придется сделать имплиситы
либо import api._

Aleksey
22.12.2016
11:46:36

Mikhail
22.12.2016
11:47:16

Oleg
22.12.2016
11:52:57

Mikhail
22.12.2016
11:55:59
[Response: JsonReader] - тоже наверное вверх можно убрать

Oleg
22.12.2016
11:56:58
скорее всего

Mikhail
22.12.2016
11:58:26
почему? одному реквесту один тип респонса соответствует и контекст также имплиситом в ряд должен ведь встать
если сделать так, что тип Response из R будет выводится - должно сработать
если явно сделать new то и без вывода должно, а если хочется reflectiveCalls - тогда выводить

Oleg
22.12.2016
12:00:36
зато можно написать request.stdRequest[MyResponse]

Google

Oleg
22.12.2016
12:01:27
и дальше его обрабатывать

Mikhail
22.12.2016
12:02:58
потому имплиситом ты ведь сделал класс как раз для того, чтобы писать request.stdRequest которое раскладывается в new RequestOps(request).stdRequest - что есть reflectiveCall который с 2.12 надо к тому же явно в импортах указывать

Oleg
22.12.2016
12:04:28
stdRequest будет статически известным членом у RequestOps
это обычный call
раскладываться он будет, на самом деле в
RequestOps(request).stdRequest без new
там создаётся одноимённый implicit def

Mikhail
22.12.2016
12:07:20
да, пардонь. попутал)

Admin
ERROR: S client not available

Mikhail
22.12.2016
12:10:50
это когда в самом начале делали через implicit def RequestOpts(...) - оно на это кидает рефлектив кол)

Nick
22.12.2016
12:13:14
Ох епт, знатно насрали

Aleksey
22.12.2016
12:14:57

Nick
22.12.2016
12:15:00
Может в будущем это можно будет свернуть в сознание одного листа
В смысле?
В прямом, ::вызов функции обычный. Попробуй вставь побольше и приедешь)

Aleksey
22.12.2016
12:16:19

Mikhail
22.12.2016
12:17:54
кто-нибудь запускал телеговскую tdlib не на андроиде?

Nick
22.12.2016
12:24:08

Denis
22.12.2016
12:25:40

Google

Grigory
22.12.2016
12:25:50
ну ник про то что :: это кейс класс

Nick
22.12.2016
12:26:01
угу

Grigory
22.12.2016
12:26:03
с головой и хвостом

Nick
22.12.2016
12:26:12
чуть больше добавляешь пиздец)

Grigory
22.12.2016
12:26:15
case class ::[A] (head: A, tail: List[A]) extends List[A]

Daniel
22.12.2016
12:26:52

Nick
22.12.2016
12:27:06
зависит от размера твоего стека
логично ж)
val a = 1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
1::2::3::4::5::6::
Nil
вот такая у меня уже валится
проверял в идеевском шите
хз сколько там стек стоит

Daniel
22.12.2016
12:29:12
а в репле ок

Mikhail
22.12.2016
12:30:28
и идеевский шит = shit

Nick
22.12.2016
12:30:50

Grigory
22.12.2016
12:30:52
короче ник прав что днище использовать :: в общем случае не больших списках
а вот конструктор List(xs: A*) работает вроде через мутабельный список

Mikhail
22.12.2016
12:31:08
в томже фидле

Nick
22.12.2016
12:31:41

Andry
22.12.2016
12:32:07