@Fsharp_chat

Страница 576 из 772
Vasily
19.05.2018
11:49:21
http://dreamstatecoding.blogspot.ru/2018/05/functional-adventures-in-f-adding.html?m=1

Статья прямо в тему

То, чем сейчас занимаюсь

В общем, надо мейлбоксы учить

Google
Григорий
19.05.2018
11:56:10
Roman
19.05.2018
14:42:09


Evgeniy
19.05.2018
14:42:31
?

Anna
19.05.2018
14:45:32
Именовать сущности всегда трудно ?

Andrew
19.05.2018
14:54:22
Я сначала подумал, что ребенка хотели назвать «эфшарп»

Oleg
19.05.2018
15:19:51
В akkling persistence совсем не работает, ишшуй завёл, а что дальше делать? Help @oobject needed

Oleg
19.05.2018
15:21:12
@VagifAbilov
Спасибо!

В akkling persistence совсем не работает, ишшуй завёл, а что дальше делать? Help @oobject needed
Вопрос такой: стоит ли оставаться на akkling или переписать на akka.fsharp? В akkling есть пара интересных штук вроде типизированных акторов и эффектов, но есть ли от них польза? @VagifAbilov

Klei
19.05.2018
17:37:50
Вопрос такой: стоит ли оставаться на akkling или переписать на akka.fsharp? В akkling есть пара интересных штук вроде типизированных акторов и эффектов, но есть ли от них польза? @VagifAbilov
Я не Вагиф, но вчера допрошел Akka Bootcamp использовав Akkling вместо Akka.FSharp. На мой взгляд выигрыш в синтаксисе серьезный. Хотя в некоторых местах код предложенного решения написан через одно место подобный косяк мог распространится и на код касающийся Akka.

Oleg
19.05.2018
18:05:41
Я не Вагиф, но вчера допрошел Akka Bootcamp использовав Akkling вместо Akka.FSharp. На мой взгляд выигрыш в синтаксисе серьезный. Хотя в некоторых местах код предложенного решения написан через одно место подобный косяк мог распространится и на код касающийся Akka.
Я как-то не задумывался, но сегодня почитал блог Михаила Шилкова про ФП, Акку и Patterns и понял, что там есть о чем подумать, а не принимать стандартное изложение модели агентов за догму

Klei
19.05.2018
18:08:25
Я как-то не задумывался, но сегодня почитал блог Михаила Шилкова про ФП, Акку и Patterns и понял, что там есть о чем подумать, а не принимать стандартное изложение модели агентов за догму
А можно ссылочку, а то я щас вообще не понял, о чем речь и как сие соотносится со сказанным мною. // Сам я совсем недавно начал пилить что-то существенное на акторах, так что рефлексии и бестпрактис у меня нет.

Google
Klei
19.05.2018
18:13:30
Спс, посмтрю.

@gsomix А ты случаем не знаешь, какие схемы юзаются для описания акторных моделей?

Для диплома надо.

Evgeniy
19.05.2018
18:18:53
@gsomix А ты случаем не знаешь, какие схемы юзаются для описания акторных моделей?
Нет, не знаю. На TLA+ можно написать спецификацию для твоего алгоритма с акторами.

Есть презентация со смешным названием. https://www.slideshare.net/SandeepJoshi55/doveryai-no-proveryai-introduction-to-tla

Evgeniy
19.05.2018
18:23:31
Slideshare заблокирован.

Klei
19.05.2018
18:23:46
Да емае.

Но спасибо. Интересно найдется ли человек в комиссии способный это понять.

Evgeniy
19.05.2018
18:26:18
Да, это не то, что ты хотел. :)

Ivan
19.05.2018
19:30:58
У меня например, кроме F# и С# есть и го, отлично работаю с ним со слабыми прогами и админами. Лучше чем питон.

Ivan
19.05.2018
19:41:14
Программисты - ну правда слабых сейчас много

Нужно время - и из них вырастут спецы, но пока хоть так

Roman
19.05.2018
21:37:44
@Dolfik https://github.com/MihaZupan/HttpToSocks5Proxy мб для funogram пойдет

Nikolay
20.05.2018
05:32:50
@Dolfik https://github.com/MihaZupan/HttpToSocks5Proxy мб для funogram пойдет
Да ладно, всё равно никому не нужен он)

Friedrich
20.05.2018
05:35:59
Постойте, но я его где-то заюзал ._.

Oleg
20.05.2018
05:36:42
А порефакторить ни у кого желания не было?

Google
Vagif
20.05.2018
05:41:19
В akkling persistence совсем не работает, ишшуй завёл, а что дальше делать? Help @oobject needed
@OlegZee у нас все работает с Akkling.Pesristence. Более этого, persistence была одной из причин перехода на Akkling

Oleg
20.05.2018
05:42:59
@OlegZee у нас все работает с Akkling.Pesristence. Более этого, persistence была одной из причин перехода на Akkling
Спасибо. Я полез немного вглубь и вижу что в актор приезжает jobject вместо Event. Сейчас опубликую нормальный пример

Vagif
20.05.2018
05:43:22
Я для Fsharp Advent Calendar в прошлом году писал статью с примерами из Akkling, но если нужно, могу поделиться конкретным кодом одного из наших персистентных акторов.

Oleg
20.05.2018
05:44:05
Буду рад любому рабочему примеру

Vagif
20.05.2018
05:44:50
Но нужно же EventAdapter прописывать в конфигурации. Причём это общее для Akkling и Akka.FSharp.

Я как до рабочего компа доберусь, сделаю гист.

Oleg
20.05.2018
05:46:48
Понял, дело явно в этом. Но про адаптер впервые слышу, спасибо за наводку!

Vagif
20.05.2018
05:48:11
Ага, значит точно в нем дело. Но этот кусок остался таким же, как он и есть и в сшарпе, здесь Akkling не при чем.

Oleg
20.05.2018
05:49:58
Но я специально перевёл пример на c# и Акку и он у меня работает. Только там каноническая реализация по akka bootcamp

Vagif
20.05.2018
05:53:11
Akkling как раз позволяет нормально работать с persistence, в стандартном FSharp API это ужасно реализовано, там с persistence работают какие-то специальные функции, выпадающие из стандартного подхода.

Странно, что у тебя на C# работает. Будем разбираться.

У тебя в yaml есть такое?

event-adapter-bindings { # to journal "System.Object, mscorlib" = json-adapter # from journal "Newtonsoft.Json.Linq.JObject, Newtonsoft.Json" = [json-adapter] }

Oleg
20.05.2018
05:58:18
Нет

Vagif
20.05.2018
05:58:21
При условии, что в json сериализуешь.

А какой формат сериализации ты используешь?

Oleg
20.05.2018
05:59:47
Я чайник, делаю по тьюториалам, то есть все по умолчанию :)

Vagif
20.05.2018
06:01:09
Но ты пишешь, что где-то ошибка про jobect говорит. Пахнет Ньютонсофтом.

Впрочем, в Акке же, по крайней мере раньше, он по-моему дефолтом выбрался.

В общем, не буду засорять канал не имеющими к фшарпу деталями. Дойду до компа, сделаю гист, отпишусь.

Google
Oleg
20.05.2018
06:03:48
Да, видно что он используется - json serializer. Самое обидное что нагуглить рабочие примеры невозможно и почитать просто негде

Vagif
20.05.2018
06:08:11
К сожалению, я не догадался об этом упомянуть в своей статье про Akkling, поскольку решил, что это вообще к акклингу не относится. Что на самом деле так и есть, но от этого не легче, когда нет информации.

Oleg
20.05.2018
06:09:00
Читаю гиттер, надеюсь сейчас все заработает

Vagif
20.05.2018
06:09:25
Немного есть здесь

https://getakka.net/articles/persistence/event-adapters.html

Oleg
20.05.2018
06:10:39
Потом сделаю персистентные сессии в SAFE-chat и можно будет поднять тестовый сервер в azure

Vagif
20.05.2018
06:10:43
Ага, гиттер при работе с Аккой - основной reference manual

?

Admin


Oleg
20.05.2018
06:11:34
Vagif
20.05.2018
06:12:23
Автокоррект упорно меняет гиттер на Гитлер, а потом Роскомнадзор скажет, что в F# канале одни нацисты собрались.

Oleg
20.05.2018
06:18:45
Все-таки нехорошо в акклинге. В БД мои данные лежат в json, то есть адаптер используется, более того им же данные и десериализуются, только не в мой тип Event

Vagif
20.05.2018
06:29:18
Вот это странно.

Oleg
20.05.2018
06:31:30
Вот мой пример https://github.com/OlegZee/akkling-persist-sample/blob/master/Program.fs

В первой ревизии код малоотличимый от примера в akkling/examples

Vagif
20.05.2018
06:38:15
@VagifAbilov, расскажи! https://twitter.com/Thoriumi/status/992064143128776704
@gsomix уже выпустили версию, где SQLProvider кеширует схему, так что можно отсоединяться от базы принеобходимости.

Oleg
20.05.2018
06:39:02
А вот сейчас запушил версию, в которой ловятся служебные сообщения и видны недодесериализованные сообщения

Vagif
20.05.2018
06:39:09
Вот мой пример https://github.com/OlegZee/akkling-persist-sample/blob/master/Program.fs
Мне с мобильного трудно понять, что может быть не так, я лучше свой код вышлю ?

Evgeniy
20.05.2018
06:41:19
@gsomix уже выпустили версию, где SQLProvider кеширует схему, так что можно отсоединяться от базы принеобходимости.
А вы схему кешируете? Или какое-то внутреннее представление, типа ProvidedTypeDefinition?

Vagif
20.05.2018
07:05:17
Есть кеш схемы, там все lazy, поэтому подгружается только то, что используется.

Google
Vagif
20.05.2018
07:06:31
На сегодняшний день не поддерживается кеширование сохранённых процедур.

Oleg
20.05.2018
07:06:54
Vagif
20.05.2018
07:31:23
https://gist.github.com/object/0cd39086ec7758e6a0d3d2a510894ccb

Oleg
20.05.2018
07:51:40
Спасибо, скопирую такой адаптер. Пока же я вставил обработку JObject событий при условии ctx.IsRecovering()

Vagif
20.05.2018
07:54:06
Ну получается?

Oleg
20.05.2018
07:55:30
Ну да, костыль с JObject работает, теперь адаптер переношу - более технологичное решение

Vagif
20.05.2018
07:57:23
Но все же непонятно, почему все работало в C#. Это же не связано с Akkling по идее.

Oleg
20.05.2018
07:58:03
Надеюсь, жду что Бартош ответит

Vagif
20.05.2018
08:08:48
Он уже ответил ?

Oleg
20.05.2018
08:09:09
?

С адаптером с полпинка не завелось, вечером ещё поразбираюсь

Roman
20.05.2018
09:24:05
Да ладно, всё равно никому не нужен он)
Я б заюзал если б прокся была

Nikolay
20.05.2018
10:17:36
Friedrich
20.05.2018
10:19:11
Чуваки, мб щас лучше сосредоточить усилия на tdlib?

Там же чувак из C#-чата очень неплохо запаковал её

И прокси там есть (ну, он так сказал)

https://github.com/x2bool/tdsharp вот эта вот

Можно её врапнуть на F#. Я знаю, вы любите такое :)

Friedrich
20.05.2018
10:26:14
Но зачем?
Это хороший вопрос. Надо посмотреть API и понять, где можно его улучшить для использования из F#. Навскидку — навернуть сверху всяких наших асинков, мб опшенолов добавить, заменить делегаты на наши лямбды и т.п.

Страница 576 из 772