
Oleg
07.02.2017
19:19:22
Ведь это было бы несравненно приятнее и прозрачнее грязных Proxy

Alex
07.02.2017
19:33:05
интересно, есть ли вообще смысл интерпретировать фриманатку в акторы

Nikolay
07.02.2017
19:34:11

Denis
07.02.2017
19:50:30

Google

Denis
07.02.2017
19:51:16
Всмысле мы так и пишем наши сервисы. Акка это просто рантайм для чистых поведений
Вот либа для этого https://github.com/notxcain/aecor
Пока доки не дописал правда

anton
07.02.2017
19:52:50
Хорош свою фотку пиарить )

Denis
07.02.2017
19:53:12
Собственно вся магия тут https://github.com/notxcain/aecor/blob/master/core/src/main/scala/aecor/aggregate/AkkaRuntime.scala

Dmitry
07.02.2017
19:53:19
скоро на улице будут подходить и афтограф спрашивать
вы ли это, с той самой граватарки на гистах

Alex
07.02.2017
19:54:33

Denis
07.02.2017
19:55:07
Ну и из либератора генерятся функции для конвертации между представлением FooOps ~> F и Foo[F]

Alex
07.02.2017
19:56:23
это у вас по мотивам https://github.com/LukasGasior1/free-event-sourcing-with-akka или самостоятельное изобретение?

Denis
07.02.2017
19:56:42
Самостоятельное )

Google

Denis
07.02.2017
19:56:58
Давно в голову влезло и вот не вылезает никак )
Еще до Lagom

Alex
07.02.2017
19:57:50
следующий шаг видимо - втащить весь фарш из матрёшки и делать полноценный компилятор в акторы :)

Denis
07.02.2017
19:59:31
Я пока туда не нырял :)

Sergey
07.02.2017
20:04:53
https://github.com/notxcain/aecor
а что это ты пишешь, зачем эта штука ?

Denis
07.02.2017
20:06:42
Позволяет запускать чистые эвентсорсиншовые поведения поверх грязной акки :)

Sergey
07.02.2017
20:07:32
эмм как это можно применить ?

Nikita
07.02.2017
20:07:35
грязная акка :)))
стримы там вполне себе хороши

Denis
07.02.2017
20:09:10

Nikita
07.02.2017
20:09:21
ну то что акторы слаботипизированные - это да, но обычно голый актор хорошо как эндпоинт выставлять
бизнес логику никто на них не заставляет писать

Denis
07.02.2017
20:09:37

Oleg
07.02.2017
20:10:02

Denis
07.02.2017
20:10:32

Sergey
07.02.2017
20:10:54

Nikita
07.02.2017
20:11:42
вопрос про то зачем нужен ивентсорсинг?

Sergey
07.02.2017
20:12:49
Что такое эвентсорсинг и его приемущества понятны

Denis
07.02.2017
20:17:06

Sergey
07.02.2017
20:18:02

Google

anton
07.02.2017
20:18:36

Denis
07.02.2017
20:19:03
?
Можно отсюда поковырять как поведения задаются https://github.com/notxcain/aecor/blob/master/example/src/main/scala/aecor/example/AppActor.scala#L55
Но лучше дождаться более лаконичных примеров )
Там куча мусора, а то, в examples

Sergey
07.02.2017
20:22:47
Ок

Maxim
07.02.2017
20:50:59
Nikolay Tatarinov, [07.02.17 19:52]
ты про требование, чтобы был установлен jdk 1.8?
не про требование, а именно про сборку. Т.е. я дергаю
sbt "release cross"
, в build.sbt у меня
crossScalaVersions := Seq("2.10.6", "2.11.8", "2.12.1")
и у меня для 2.12 используется java 8 а для всех остальных используется java 7 для сборки
спасибо за флаги, попробую :)

Oleg
07.02.2017
21:02:14

Grigory
07.02.2017
21:22:25
scalacOptions := Seq("-target:jvm-1.7")
scalacOptions := Seq("-target:jvm-1.8")
scalacOptions := Seq("-target:jvm-1.6")
¯\_(ツ)_/¯

Maxim
07.02.2017
21:31:48
javaHome не круто, так как появляется жесткая привязка к структуре папок конкретной тачки
попробую завтра со scalacOptions по-экспериментировать, спасибо! :)

Max
07.02.2017
22:47:17
Есть какие-то треды или каналы в телеграме или slack, связанные с golang? Заранее спасибо

Dmitry
07.02.2017
22:47:54
про.го
не уверен реклама это здесь или что

Max
07.02.2017
22:49:10
Спс

Vadim
07.02.2017
22:49:22
конечно реклама
у нас ведь тоже про голанг

Oleg
08.02.2017
04:29:32

Google

Nick
08.02.2017
05:40:51
Aleksey за даркдимиуса спасибо. Спасибо и ему, что за монады не топит?

Aleksey
08.02.2017
06:02:01

Nick
08.02.2017
06:17:41
@dos65 Дениса то не позвал?)

?Ivan
08.02.2017
06:36:38
так он на предыдущем подкасте был

Nick
08.02.2017
06:52:39
Реально?
Вот я лошара
Да другого Дениса

Evgeniy
08.02.2017
06:53:56
было 2 Дениса в подкасте

Nick
08.02.2017
06:55:55
Какой второй

Evgeniy
08.02.2017
06:56:26
https://twitter.com/borovikov

Admin
ERROR: S client not available

Nick
08.02.2017
06:57:23
Опять мимо
Другой нужен?

Evgeniy
08.02.2017
06:57:49
notxcain ?
или кто еще?
notxcain был в 2х выпусках
6 и 13

Vadim
08.02.2017
07:04:44
@gurinderu позвал, через 2 выпуска скорее всего будет шабалин)

Nick
08.02.2017
07:05:15
?

Юрий
08.02.2017
07:07:08
круто, что довольно много русскоязычных чуваков занимаются разработкой базовых вещей в языке

Google

Nick
08.02.2017
07:09:23
Разовых?

Юрий
08.02.2017
07:11:22
fixed

Nick
08.02.2017
07:15:57
Да вроде не много, я только троих знаю

Alexander
08.02.2017
07:49:59
Вот у Скаловского опшна такой вот map:
@inline final def map[B](f: A => B): Option[B] =
if (isEmpty) None else Some(f(this.get))
Кто объяснить, нафига он такой? Чтобы с NPE оно падало, что ли?

Юрий
08.02.2017
07:52:13
А что именно смущает?

Oleg
08.02.2017
07:52:19

Alexander
08.02.2017
07:52:47
if (isEmpty) None else Option(f(this.get))

Sergey
08.02.2017
07:52:47
Ага, не далее как вчера наткнулся, что в джаве Optional.map(f), если f возвращает null, превращается в empty

Alexander
08.02.2017
07:52:50
Например.

Sergey
08.02.2017
07:53:04
И это было бы правильно

Oleg
08.02.2017
07:53:12
зачем f возвращать null?

Alexander
08.02.2017
07:53:13
Вот я такого же мнения.

Sergey
08.02.2017
07:53:22
Это другой вопрос

Oleg
08.02.2017
07:53:36
flatMap(f andThen Option)
зачем лишние проверки

Alexander
08.02.2017
07:53:43
Ну флэтмэп то как нужно работает, а мэп нет.

Daniel
08.02.2017
07:54:43
в java имеют привычку на null еще логику вешать, поэтому нафиг не надо его кастовать через Option в данном месте

Oleg
08.02.2017
07:54:46

Daniel
08.02.2017
07:54:54
а в другом мире и проблем не будет

Oleg
08.02.2017
07:55:51
всем, кому не нравится. напишите себе такой Опшн
https://github.com/rklaehn/radixtree/blob/master/src/main/scala/com/rklaehn/radixtree/Opt.scala
он и быстрее будет

Юрий
08.02.2017
07:57:00