@Fsharp_chat

Страница 527 из 772
Vasily
30.03.2018
09:16:27
Коллеги, а как у нас модулю задать имя при компиляции? CompiledName не работает

По поводу вчерашних споров про енамы. Хочется так : let read<'a,'b> reader (f:BinaryReader->'b):'a= let c=f reader LanguagePrimitives.EnumOfValue(c)

@gsomix ^

Google
Vlad
30.03.2018
09:36:42
Стандартный трюк. https://bit.ly/2uBuwJe
эти вызовы инлайнятся на стадии компиляции?

Evgeniy
30.03.2018
09:45:41
let inline read< ^a, ^b when ^a: enum< ^b>> reader (f:BinaryReader -> ^b): ^a= let c = f reader LanguagePrimitives.EnumOfValue c

@vshapenko ^

Vasily
30.03.2018
09:51:23
Хммм, гляну

Evgeniy
30.03.2018
09:53:16
Привет.

Konstantin
30.03.2018
09:53:37
День добрый)

Vasily
30.03.2018
10:45:21
Я вам тут привел новообращенного адепта :)

Andrey
30.03.2018
10:45:33
Всем привет!

Evgeniy
30.03.2018
10:52:17
Andrey @fuckingteamlead Пожалуйте.

Vasily
30.03.2018
14:06:58
Мда, чем дальше влезаю в бинарные сериализаторы, тем больше наркомании...

Friedrich
30.03.2018
14:07:49
Я не каждый день делаю бинарные сериализаторы, но когда делаю — делаю их на ансейфе!

Google
Vasily
30.03.2018
14:07:57
Вот удалось сериализатор отвязать от BinaryReader/BinaryWriter

На ансейфе не покатит

Тут надо байтеги инвертировать

В некоторых случаях

Friedrich
30.03.2018
14:08:24
Ну вот на ансейфе и инвертируй.

Vasily
30.03.2018
14:08:30
Точнее местами переставлять

Friedrich
30.03.2018
14:08:37
Вычислил там смещение и фигак

Точка, точка, запятая — вышел указатель

Vasily
30.03.2018
14:09:08
Ансейф- следующий этап

Ща пока с билдерами развлекаюсь

Ансейф - это когда в память или быстродействие упрусь

Friedrich
30.03.2018
14:11:07
А я просто в своё время писал клиента для уже готового сервера, который юзал бинарную сериализацию. К счастью, авторы даже спеки подготовили — вот и запиливал там на маршале с ансейфом.

Vasily
30.03.2018
14:11:29
Ну у меня спек нет, так что я попутно изучаю еще :)

И документировать пытабсь

Friedrich
30.03.2018
14:11:58
Ну, видимо, сорцы зато есть?

У меня сорцов не было :)

Vasily
30.03.2018
14:12:21
Ну плюсовые есть

Vlad
30.03.2018
14:13:38
Vasily
30.03.2018
14:13:55
0xc000005

Если кто помнит

Google
Vasily
30.03.2018
14:14:19
Хотя я , возможно, ошибся в числе ноликов

Vlad
30.03.2018
14:14:21
0xc000005
Это код ошибки бсода?

Vasily
30.03.2018
14:15:08
Не совсем

Friedrich
30.03.2018
14:15:21
Кажется, это access violation?

Vasily
30.03.2018
14:15:26
Угу

Он самый

И его словить реальнее в разы, по идее

Ivan Короче, написал я некоторый концепт сериалайзера, не завязанного на стримах, но следующий шаг уже приведет к reader\writer monad по идее

Friedrich
30.03.2018
14:19:32
Ну и сделай монадку, какие проблемы?

Vasily
30.03.2018
14:19:46
Не все сразу

Но вырисовывается прикольная штука

Чем-то созвучная Nessos.Streams

Pavel
30.03.2018
14:29:55
Десериализатор - это не монада, а аппликативный функтор

Vasily
30.03.2018
14:30:37
Шайтанама

(ctx->v->ctx) list фактически

Pavel
30.03.2018
14:31:44
ну ты только под контекст засунь функцию карированную

а десерализатор у тебя будет к ней параметры применять

Vasily
30.03.2018
14:31:59
Хммм

А это идея

Google
Vasily
30.03.2018
14:32:23
Причем очень неплохая

Pavel
30.03.2018
14:32:34
функция возвращает результат, а десериализаторы можно будет чейнить

Vasily
30.03.2018
14:33:09
За идею респект, снимает некоторые проблемы с говнокодом

Причем даже не некоторые

На компайл тайме можно будет много чего отловить

Pavel
30.03.2018
14:36:20
На самом деле миксить это с сериализатором будет больно

Vasily
30.03.2018
15:25:18
Ну мне бы победить проблему апплая функции в билдере

Там все довольно неоднозначно

Хотя надо глянуть, что делает unbox

Похоже, моя функция все время в obj заворачивается

Artemy
30.03.2018
21:10:17
? https://i.imgur.com/tckKOW4.png

Vasily
30.03.2018
21:43:24
Короче, попробовал я трюк с partial apply в builder

Оно реально работает

И открывает некоторые восхитительные перспективы

Например,вызов определенной операции только один раз

@pavelkhritonenko респект и уважуха за подсказку элегантного решения проблемы десериализации

Evgeniy
31.03.2018
04:42:51
Доброе утро.

https://twitter.com/sergey_tihon/status/979817793712508928?s=19

Мемы.



Google
Evgeniy
31.03.2018
07:14:38
Правда, из соседнего чата. :)

Igor
31.03.2018
07:19:29
Вот такой шизой залетный скалисты постоянно страдают в котлин-чатике

Igor
31.03.2018
07:23:13
Не не, в отличие от Алексия я хотя бы писал на C# (даже в проде) а он вообще просто поныть заходит t.me/kotlin_lang/61073

Evgeniy
31.03.2018
07:23:43
Ок. :)

Klei
31.03.2018
08:47:16
Для F# есть какая-нибудь обертка над HttpClient? Чувствую, что я щас начну изобретать велосипед, но нагуглить не могу.

Pavel
31.03.2018
08:57:16
Правда там зависимость на hopac :)

Klei
31.03.2018
09:05:38
Есть http.fs https://github.com/haf/Http.fs/blob/master/README.md
Про него знаю. Но думал обойтись без зависимости. К тому же у меня были проблемы с ним при параллельных запросах. Было это в интерактиве, но моих знаний и времени не хватило, чтобы врубиться, в чем была проблема.

Roman
31.03.2018
10:25:53
Стандартная вакансия по f#. Нужен c# разработчик который умеет в f#. Если будут по вакансии вопросы могу скинуть в личку контакт владельца

https://hh.ru/vacancy/25040385

Владислав
31.03.2018
10:51:06
есть примеры REST бэка на F#?

Roman
31.03.2018
11:00:57
Suave.IO https://suave.io/restful.html

Подозреваю что похожим образом можно мне giraffe

Evgeniy
31.03.2018
11:27:28
есть примеры REST бэка на F#?
Есть пример сразу бэка с фронтом. https://github.com/SAFE-Stack/SAFE-BookStore

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