
Denis
02.10.2017
10:14:56
Дизайн немного переделать )
секретный способ это когда нет магии и все я вно делается. В том числе запуск графа

Alex
02.10.2017
10:15:38

Denis
02.10.2017
10:15:40
тут как я понимаю он происходит в момент создания SomeInternalLogic

Google

Alex
02.10.2017
10:15:53
да

Denis
02.10.2017
10:15:57

Vladimir
02.10.2017
10:16:36
https://github.com/akka/akka-persistence-cassandra/blob/master/core/src/test/scala/akka/persistence/cassandra/query/EventsByTagSpec.scala#L266
вот пример TestSinkа и ассертов по нему

Denis
02.10.2017
10:16:50
да
ну это же самое простое, если параметрировать его по Mat

Vyacheslav
02.10.2017
10:55:43
свежие книги по Scala на русском #book
http://dmkpress.com/catalog/computer/programming/functional/978-5-97060-536-3/
http://dmkpress.com/catalog/computer/programming/functional/978-5-97060-572-1/
https://www.piter.com/collection/soon/product/scala-professionalnoe-programmirovanie

Arthur
02.10.2017
11:11:42
имхо, лучший совет для начинающих, не только в Scala, научиться читать книги на Английском
читать переводы в bleeding edge экосистемах, это какбы днище
у нас тут не .net

Mikhail
02.10.2017
11:14:56

Валерий
02.10.2017
11:16:57
а кто-нибудь пояснит мне за event sourcing? на инфраструктурном слое это всегда последовательность событий для сущности? или можно, например, хранить сущность "как есть", а события разворачивать при сохранении сущности в репозиторий и вести лог событий отдельно только для отчетности?

Nikolay
02.10.2017
11:17:39

Arthur
02.10.2017
11:18:25

Google

Arthur
02.10.2017
11:19:55
вы можете сделать cqrs, и с одной стороны принимать события и накатывать их на стейт, допустим где-то в эластике
а с другой стороны читать этот стейт
тут вопрос насколько консистентными вы хотите быть

Alex
02.10.2017
11:20:20
> а кто-нибудь пояснит мне за event sourcing?
старайтесь избегать по возможности ?

Vyacheslav
02.10.2017
11:20:26

Arthur
02.10.2017
11:20:49

Alex
02.10.2017
11:21:09
/toxic

Diemust
02.10.2017
11:21:37

Aleksei
02.10.2017
11:21:50

Vyacheslav
02.10.2017
11:22:00
)

Aleksei
02.10.2017
11:22:12
ну все все закидали какахами человека =) слишком мы токсичные

Diemust
02.10.2017
11:22:22
скала для нетерпеливых на русском, кстати, уже больше двух лет назад как есть

Vyacheslav
02.10.2017
11:22:39
так это вторая часть

Diemust
02.10.2017
11:22:55
"второе издание" ты хотел сказать?

Alex
02.10.2017
11:22:56

Vyacheslav
02.10.2017
11:23:00
ага

Diemust
02.10.2017
11:23:18
значит они должны были выпилить разделы про кейк-паттерн и про акторы в скале, по идее (хотелось бы верить)

Denis
02.10.2017
11:23:41

Alex
02.10.2017
11:24:35
> значит они должны были выпилить разделы про кейк-паттерн и про акторы в скале, по идее (хотелось бы верить)
это уже не выпилить!

Google

Vyacheslav
02.10.2017
11:25:27

Denis
02.10.2017
11:25:30
без транзакций

Валерий
02.10.2017
11:26:09

Arthur
02.10.2017
11:26:26
+

Denis
02.10.2017
11:27:03

Валерий
02.10.2017
11:27:18

KrivdaTheTriewe
02.10.2017
11:27:37

Валерий
02.10.2017
11:29:15
просто мне для моей задачи хранение и восстановление сущности по событиям кажется мощщным таким оверхедом, однако накатывать события в рантайме и разворачивать их при персистенсе с целью логгирования кажется очень удобным

Denis
02.10.2017
11:30:24

Alex
02.10.2017
11:30:40

Валерий
02.10.2017
11:36:09
т.е., я в рамках условного запроса от клиента хочу взять сущность из асбтрактного репозитория, выполнить над ней бизнесовые команды, которые накатят на нее определенные события. затем сохранить сущность через тот же репозиторий, раскрутив там события и залоггировав их рядом для отчетности.

Alex
02.10.2017
11:39:43
Выглядит как CRUD с логгированием
Но не как что-то для чего нужен Event Sourcing

Валерий
02.10.2017
11:42:40

Max
02.10.2017
12:02:32
Народ вопрос - очень надо парсить xml для scalajs(и не только)
scala-xml - будет поддерживать scalajs только в след версии(1.1.0) которая похоже не раньше нового года выйдет
причем собирал даже отсюда https://github.com/ashawley/scala-xml/tree/version-1.1.0 - все равно хочет javax.xml.parsers.SAXParserFactory
вот думаю какие еще есть варианты попарсить кросплатформенно xml
пока нагуглил что fastparse может , но это не выглядит как поддерживающий scalajs
https://github.com/lihaoyi/fastparse/blob/master/scalaparse/shared/src/main/scala/scalaparse/Xml.scala
можно ли сделать с помощью scala-parser-combinators или это будет оверкилом?

Юрий
02.10.2017
12:08:15

Max
02.10.2017
12:09:08
меня смутило отсутвие папки js/src
ок спасибо попробую ее

Юрий
02.10.2017
12:14:51
shared - это шареный между js/jvm код

Google

Alex
02.10.2017
13:52:38
из популярных пруверов без завтипов, но с равномощной системой (higher-order logic) - Isabelle

Daniel
02.10.2017
13:54:53
Coq, Agda, Lean
Есть смысл с кем-то из них разбираться, если уже начал тыркать идрис? Уверен, что не понимаю прикладной разницы.

Alex
02.10.2017
13:55:56
смотря какая цель :)
агда самая близкая к идрису по духу
кок самый зрелый
лин говорят удобно зделоли

A
02.10.2017
13:57:05
что такое лин

Alex
02.10.2017
13:57:16
https://leanprover.github.io/

A
02.10.2017
13:57:26
что про fstar говорят?

Alex
02.10.2017
13:57:43
там больше упор на рефайнмент типы, модел чекинг всякий
близкая тема, но немного другое

Grigory
02.10.2017
14:11:31
т.е. для своих маленьких доказательств идеальная среда

KrivdaTheTriewe
02.10.2017
14:12:24

Grigory
02.10.2017
14:13:27
да я выводил типы гетерогенных структур ?)
примитив
в идрисо канале жоские рибята вот

Daniel
02.10.2017
14:20:09
т.е. для своих маленьких доказательств идеальная среда
Вот да, я в этих темах 0. Для начала понять бы что можно доказывать.
Интересно особенно в контексте автогенерации аналогичных программ, но с другими свойствами (например, оптимизации производительности). И в контексте применимости к распределенным системам (что-то вроде формальной верификации, у Лампорта есть подобное по цели)

Alex
02.10.2017
15:56:39
для распределенного я видел
https://github.com/Microsoft/Ironclad (Dafny/C#)
http://verdi.uwplse.org/ (Coq/OCaml)
https://github.com/mit-plv/chapar (Coq/OCaml)

Google

Daniel
02.10.2017
16:01:22

Alex
02.10.2017
16:04:21
про автогенерацию наверное надо смотреть в сторону datatype-generic тем - индексированные функторы, AoP, работы Диля, Магальяэса, Алле, вот это всё

Vasiliy
02.10.2017
19:10:06
Привет, скалачат!
Который раз уже пытаюсь написать имплисит класс, который расширял бы одновременно и Source и Flow, из акки, и до сих пор не вышло.
Первоначально пробовал через FlowOpsMat, но понял что теряется исходный тип, тем более он там path-dependent, и далее работать с результатом не очень удобно, кроме того у Flow 3 параметра, у Source 2, в общем, имплисит у меня выходит либо только для одного, либо для другого.
По отдельности, естественно, никаких проблем.
Поделитесь знанием, как это сделать, если такое вообще возможно?


Oleg
02.10.2017
19:21:40
Привет, скалачат!
Который раз уже пытаюсь написать имплисит класс, который расширял бы одновременно и Source и Flow, из акки, и до сих пор не вышло.
Первоначально пробовал через FlowOpsMat, но понял что теряется исходный тип, тем более он там path-dependent, и далее работать с результатом не очень удобно, кроме того у Flow 3 параметра, у Source 2, в общем, имплисит у меня выходит либо только для одного, либо для другого.
По отдельности, естественно, никаких проблем.
Поделитесь знанием, как это сделать, если такое вообще возможно?
typeclass
Можешь прям взять simulacrum и вперёд

Alex
02.10.2017
20:57:15
вот еще кстати про моделирование распределенного, только не на завтипах, а на линейной логике
https://web2.qatar.cmu.edu/iliano/projects/metaCLF/

Alexander
02.10.2017
20:58:27
Я так понимаю, всякие индексированные штуки как минимум с помощью зависимого можно.

Alex
02.10.2017
21:04:00
это наверное лучше в том чатике спросить, я только пачку статей могу дать

Alexander
02.10.2017
21:06:11

Vasiliy
02.10.2017
21:43:43
typeclass
Спасибо, давно уже что-то видел на эту тему, видимо, пришло время разобраться :)