
Roman
19.07.2018
12:43:50
BDD clause

Dmitry
19.07.2018
12:47:03

Roman
19.07.2018
12:49:48
*сообщу всем заинтересованным

Google

Летучая
19.07.2018
16:12:14
Хм, есть ли эксперты по fable в чате? Почему, если часто вызывать одну и ту же функцию (нет, она не рекурсивная), происходит падение с Maximum call stack size exceeded? То есть если сделать window.setInterval(loop, 20), рано или поздно loop: unit -> unit всегда начнёт выбрасывать исключения такого характера.
Это очень загадочно, но похоже, что во всём виноват Seq.filter, который использовался в этом loop. Если его убрать, то всё становится нормально.
Да, в это трудно поверить, но нашёлся следующий ишшуй, открытый два года назад. https://github.com/fable-compiler/Fable/issues/459

Ayrat
19.07.2018
16:16:05
говорят пофикшено. Регресс?

Летучая
19.07.2018
16:20:49
говорят пофикшено. Регресс?
Не уверен. У автора ишшуя большие массивы, а у меня там всего-то 10 рекордов лежит! Правда, Seq.filter вызывается очень много раз.
UPD: Если заменить Seq на List, то фильтрация перестает падать. В общем, в Fable seq лучше не трогать. (надо бы ишшуй им запилить, конечно, но я в лесу)

Roman
19.07.2018
17:57:39
Привет!!

Летучая
19.07.2018
18:03:30

Roman
19.07.2018
18:09:43
А какой контекст?
там используется BDD бехэвиар драйвен девелопмент.
Мне не понятно, что такое clause BDD. Замыкание?

Vasily
19.07.2018
18:10:45
Полную цитату дай

Vlad
19.07.2018
18:17:59

Roman
19.07.2018
19:45:51
А какой контекст?
тут в самом низу в комментарии к коду
@vshapenko @vs192ef34 @worldbeater
https://github.com/kleidemos/fsharpforfunandprofit.gitbook/blob/thinking-functionally/posts/function-values-and-simple-values.md
Написал тонну кода
@
Нашел способ писать компактнее
@
Удалил 3/4 написанного

[Anonymous]
19.07.2018
20:23:20

Ayrat
19.07.2018
20:24:08
Point free да так чтоб с кучей кастомных операторов? Обфускация на уровне исходного кода?

Google

Владислав
19.07.2018
20:38:19
не понимаю когда используются неймспейсы, а когда модули и как они вместе вяжутся( есть что почитать?

Sergey
19.07.2018
20:41:18

Владислав
19.07.2018
20:42:06

Vlad
20.07.2018
04:43:29
https://forums.fsharp.org/t/website-re-design-we-need-your-input/344

Ayrat
20.07.2018
05:23:42
Замени там Fsharp на "натяжные потолки" и ничего не изменится

Vlad
20.07.2018
05:27:06
Плюс перегруженным ужасно кажется

Roman
20.07.2018
07:15:45
http://tiny-giant-books.com/blog/programming-in-f-like-a-stupid-person/?ref=twitter
Ody Mbegbu: F# and Machine Learning
https://twitter.com/Odytrice/status/1018437605476765697?s=19
Привет!

DHT
20.07.2018
07:16:48
Здравствуйте!

Летучая
20.07.2018
07:22:56
Может, fsharplang.ru переведём, сделаем начальный экран поинформативнее и предложим им?

Vasiliy
20.07.2018
07:28:49

Klei
20.07.2018
07:30:33
У нас есть идеоматичный аналог Polly? С DU и прочими радостями.
И есть ли что-то подобное на Akka/Akkling? Понятно, что из коробки много чего заложено, но чет не торт.

Roman
20.07.2018
07:31:07

Klei
20.07.2018
07:31:57

Roman
20.07.2018
07:32:20

Klei
20.07.2018
07:33:15
Лан. про последнее можешь забыть, оно быстро впиливается.

Google

Klei
20.07.2018
07:33:58
Если есть движок.

Roman
20.07.2018
07:34:15
можно сделать же. Пишется в пару строк вроде
let polly (f: 'a -> 'b) -> counter -> (validator:'b -> bool) = ... ?
Про handleResult не помню)

Klei
20.07.2018
07:39:25
Так там начнется, сделай через такие то интервалы, прерывай раньше на таком то exn, делай бесконечно, если не получилось подсунь вот это и т.д. Я уже написал несколько подобных вариаций, но мне все мало.
Подумываю серьезно зарубиться в эту тему, и не хотелось бы потом найти готовое решение.
Апишка еще самому до конца не ясна, что увеличивает риски зависнуть.
Как будет произносится pollyakka? ?

Ayrat
20.07.2018
07:46:50
Supervisor)

Klei
20.07.2018
07:49:07
Да он как-то не так зависимости распределяет. Я хочу актор запустить который будет строго определнным образом хендлить задачу, после чего высылать результат предку. А с supervisor все это выплескивается в предка.
Я в принципе не против заюзать supervisor при проектировании pollyakka, главное что бы снаружи его не видно было.

Ayrat
20.07.2018
12:55:34
Кто-нибудь знает, есть мутабельный дабл линкед лист в F#? ну типа как System.Collections.Generic.LinkedList только с карированными методами?)

Vasily
20.07.2018
12:59:01
Тебе вперёд и назад надо ходить, шоле?

Ayrat
20.07.2018
12:59:24
да, и ещё удалять перед зад

Vasily
20.07.2018
13:00:07
Однако, требования взаимоисключающие :)
Тебе же ещё небось без лишних аллокаций

Ayrat
20.07.2018
13:01:07
мне надо структруру где можно удалять/добавлять перед зад без пересоздания структуры. Ну короче иммутабельные листы отваливаются, очереди и стеки тоже. LinkedList подходит, но мне просто лень рисовать фасад под него

Vasily
20.07.2018
13:01:29
Список списков?

Ayrat
20.07.2018
13:02:28
Список в C# = массив), там в начало не вставишь.
Списков F# = иммутабельный, там в конец без переаллокации всего списка не вставишь

Vasily
20.07.2018
13:03:09
Ну вставлять в конец списка- такое себе

Ayrat
20.07.2018
13:03:38
Ну в мутабельном листе нормально. Просто ссылку на Next перебиваешь и поехали

Vasily
20.07.2018
13:03:58
Нафиг это тебе понадобилось?

Google

Ayrat
20.07.2018
13:04:23
Вставлять в зад :D И вперед!

Vasily
20.07.2018
13:04:45
Кстати, дерево может подойти

Ayrat
20.07.2018
13:05:23
Хотя подожди, я щас подумал что наверное вставлять в зад не надо. Можно только вперёд, а значит можно заюзать очередь

Vasily
20.07.2018
13:05:49
Ну вот видишь
Лучше не очередь
А seq
Если без удалений

Ayrat
20.07.2018
13:07:53
Я щас расскажу смысл задачи, только не смейся.
После вчерашнего разговора во флуде про акку и UI, я решил сам попробовать (конец дня пятницы все дела). И решил сделать ЗМЕЙКУ на WPF и акке. Ну чтоб совсем упороться.

Vasily
20.07.2018
13:08:34
Ну обычный счетчик же

Ayrat
20.07.2018
13:08:38
ну и там полный fizzbuzz enterprise edition, чтоб DDD, евентсорсинг.

Vasily
20.07.2018
13:08:44
Количества сегментов
Плюс минус
Все дела

Ayrat
20.07.2018
13:08:58
Подожди, ты оптимизируешь, а надо чтоб красиво

Vasily
20.07.2018
13:09:14
Ну там если у змеи сегменты без состояний

Ayrat
20.07.2018
13:09:17
а Красиво будет хранить змейку как очередь ячеек :D

Vasily
20.07.2018
13:09:41
Обычным спискм
Она ж никогда вроде не теряет ячейки еще

Ayrat
20.07.2018
13:09:59
теряет же

Vasily
20.07.2018
13:10:04
КОгда?

Google

Ayrat
20.07.2018
13:10:26
когда перемещается) у неё голова И хвост уходит на одну ячейку вперед

Vasily
20.07.2018
13:10:38
А, понял
К каждой ячейке привязана координата
Хотя это можно уйти в интересную древовидную структуру
Типа L2 R5 U8 etc
Т.е. просто храним координаты головы и в какую сторону сегменты повернуты

Ayrat
20.07.2018
13:12:30
это мелочь, главное ты мне скажи как ты в датаконтекст вьюмодели кладёшь и ща всё будет

Vasily
20.07.2018
13:12:46
MainWindow.DataCOntext=vm

Ayrat
20.07.2018
13:12:55
как необычно :D

Vasily
20.07.2018
13:12:59
Если на f#, то через <-
А, ну и через Application.Current.Dispatcher.Invoke естественно
Там как
У тебя есть апп
В нем есть главное окно
Обычно этого достаточно, все остальное делается на уровне моделей

Ayrat
20.07.2018
13:14:52
а если надо дочернее окно?
или диалоговое?

Vasily
20.07.2018
13:15:07
ShowDialog