@Fsharp_chat

Страница 506 из 772
Aminion
11.03.2018
13:34:16
Ну как бы фп подразумевает определение логики в типах

Это как монада эйзер и кидание ошибки

Evgeniy
11.03.2018
13:36:32
Наверное, в общем случае нужны зависимые типы.

Google
Friedrich
11.03.2018
13:37:06
Наверное, в общем случае нужны зависимые типы.
Можно с доказательством вопросу решить без завтипов

Ivan
11.03.2018
13:37:15
Безопасный мап - рекорд

Friedrich
11.03.2018
13:37:36
Давайте так: когда кладёшь элемент в словарь или получаешь его оттуда — получаешь некий эвиденс из этого словаря.

Aminion
11.03.2018
13:37:40
Пройдемте в кложе-чат ?
У меня недостаточно скобочек

Friedrich
11.03.2018
13:38:09
И потом можно либо получить из словаря по эвиденсу (с гарантией возврата значения), либо по ключу (без гарантии).

Хотя, блин, тогда можно перепутать эвиденсы в разных словарях. Ок, я сдаюсь.

Aminion
11.03.2018
13:43:41
Ну, это понятно, но эксепшн это уже рантайм

Roman
11.03.2018
13:45:53
Ну, это понятно, но эксепшн это уже рантайм
Да поэтому верни опциональнай тип и прогнать потом этот опциональный тип через default (fun (x: 'a option) (defaultVal:'a) -> match x with | Some c -> c | _ -> defaultVal) обычный вариант

Lambda Factory http://lambdafactory.io/

Evgeniy
11.03.2018
18:42:14
https://twitter.com/k_cieslak/status/972889376337383424

Непонятно, возьмёт ли он кого-то не из Польши. :)

Google
Most
11.03.2018
18:45:58
удаленка же, не?)

Roman
11.03.2018
18:47:03
Обучают?

был вопрос в соседнем чате

Evgeniy
11.03.2018
19:14:50
Я к тому, что, ну, почему на польском-то? :)

Most
11.03.2018
19:24:17
а, понял) туплю под вечер, пардон :)

Kirill
11.03.2018
19:40:28
может есть кто с западной украины и достаточно понимает и русский и польский

Dmitriy
11.03.2018
19:48:42
Ну так там все просто) насколько я понимаю, надо мидл, срочно, гибкий график

Аутсорс

Удаленка

Kirill
11.03.2018
19:51:00
это понятно, но не весь польский такой

Evgeniy
11.03.2018
19:51:12
Я к тому, что, ну, почему на польском-то? :)

Можно и на английском было написать.

Ну, ладно.

Интересно, насколько в Польше большое F# сообщество. Вот в Чехии, например, оно довольно приличное.

Dmitriy
11.03.2018
19:55:07
У поляков раньше ещё скала в почёте была

Kirill
11.03.2018
19:55:15
Можно и на английском было написать.
намекают, что общение в компании тоже на польском будет

Evgeniy
11.03.2018
19:55:46
Ок.

https://twitter.com/Horusiath/status/972967975241371648

Roman
12.03.2018
04:42:33
https://twitter.com/Horusiath/status/972967975241371648
Какая крутотень. Я немного пропустил, а видели случился на этих выходных?

Google
Klei
12.03.2018
04:51:45
Народ, а как давно рекорды научились переопределять ToString на sprintf "%A" this? Автоматом в ручную переопределял, а сейчас случайно заметил, что в WPF выводится вполне читабельное представление.

Evgeniy
12.03.2018
05:37:14
https://github.com/fsharp/fslang-design/blob/master/FSharp-4.1b/FS-1022-override-ToString-for-discriminated-unions-and-records.md

Я думаю, надо Alex поставить звездочек. https://github.com/AlexTroshkin/fsharp-dapper

Привет!

Andrew
12.03.2018
08:07:00
выглядит круто

только вот это смущает: (query |> QueryAsync <| connection)

Vasily
12.03.2018
08:07:49
Ну это он чтобы вторые скобочки не ставить :)

Roman
12.03.2018
08:08:09
Но можно подумать как сделать проще, если есть предложения всегда можно открыть issue

Vasily
12.03.2018
08:15:33
Ну я бы там переписал что-то типа let run<'a> connection query =(QuerySingleAsync<'a> connection query)|>Async.RunSynchronously

Хотя это тоже некошерно

Можно еще упростить

Но лень открывать студию :)

let runAsync<'a> connection=QuerySingleAsync<'a> connection let run <'a> query = query|>runAsync<'a>|>AsyncRunSynchronously Вроде так

Roman
12.03.2018
11:17:55
Привет!

From @DependencyInjection to @DependencyRejection

Nick
12.03.2018
11:19:44
И вам не хворать :)

Roman
12.03.2018
11:22:05
Привет!

Google
Kirill
12.03.2018
11:22:27
Roman
12.03.2018
11:22:43
second user not found :(
Еще свободно для перехода))

Kirill
12.03.2018
11:22:49
kek

Vladimir
12.03.2018
11:24:49
только вот это смущает: (query |> QueryAsync <| connection)
да, коннекшн первым параметром должен быть чтобы partial application применять

я например вот так делаю let myQuery<'T> = Db.queryAsync<'T> connection let myQuerySingle<'T> = Db.querySingleAsync<'T> connection и потом юзаю myQuery, myQuerySingle

Evgeniy
12.03.2018
14:44:57
Положу здесь, чтобы потом не забыть #прочитать. https://twitter.com/graydon_pub/status/973083923466002433

Roman
12.03.2018
15:09:29
Это же LINQ тайппровайдер
ну или билдерпровайдер

Интересно, а через DU можн как-то выразить все возможные выборки Типа ОТ = . -> +∞ ДО = -∞ -> . ОТ ДО = . -> . ДО ОТ = -∞ -> . U . -> +∞

?‍?
12.03.2018
16:23:34
Привет, кто-нибудь пишет под Android на F#?

Igor
12.03.2018
16:33:46
Привет, кто-нибудь пишет под Android на F#?
Ну скорее пытался, сейчас больше ReactNative практикую. Какой-то конкретный вопрос есть?

?‍?
12.03.2018
16:37:26
Igor
12.03.2018
16:40:08
- Потому что React(Native) более функциональный фреймворк, там давно есть реализация ELM/TEA архитектуры - В RN есть “кросплатформенный UI” (android/ios) из коробки. Есть конечно XF, но там ооп-ный MVVM - Можно разрабатывать в легкой VSCode (я вообще в ней все пишу) или Rider - Теор, есть готовые rn-for-windows/rn-for-macos/rn-for-web (те можно больше платформ охватить) Тестировал RNforWeb + F#/Fable - оно работало и в принципе если обернуть это в electron, то получится desktop-приложение.

Igor
12.03.2018
16:50:40
Привет, кто-нибудь пишет под Android на F#?
В принципе, можно на F# писать в Xamarin, но - Только в VS/VSforMac (Rider не умеет в F# + Xamarin, VSCode и подавно) - APK будет большой, тк будет требоваться netstandart + f# runtime-library (хотя можно с линкером поиграть)

?‍?
12.03.2018
16:58:02
В принципе, можно на F# писать в Xamarin, но - Только в VS/VSforMac (Rider не умеет в F# + Xamarin, VSCode и подавно) - APK будет большой, тк будет требоваться netstandart + f# runtime-library (хотя можно с линкером поиграть)
Думаю пока продолжать на F#, так как бизнес логики очень много, а хотелось бы после легко перейти на iOS, жаль только, что Xamarin.Forms медленно развивается. На счет размера уже заметил, что прототип (на C#) весит довольно жирно, однако, за F# пока не заметил сильного утолщения, но и прототип еще не оброс. А можно ли на React Native подвязать C++ библиотеки и насколько это сложно, типа написать обёртку придётся?

Google
Pavel
12.03.2018
17:46:48
?‍?
12.03.2018
17:47:31
что именно?
Забыть про формы, и сложность перехода на iOS

Pavel
12.03.2018
17:49:19
отсуствие форм приводит к разности в построении интерфейсов для андроида и иос. в результате шарится порядка 50-70% кода для обоих платформ

формы использовать невозможно т.к. раньше в приципе не было визуального дизайнера форм (его и сейчас вроде нет). а использование чистого ксамарина позволяет использовать родние дизайнеры интерфеса для андроида и иоса с возможностью построения максимально родного для этих платформ интерфейса

т.е. особой сложности как таковой нет. но писать для иос учитывая специфику интерфейса придется тоже.

?‍?
12.03.2018
17:53:12
отсуствие форм приводит к разности в построении интерфейсов для андроида и иос. в результате шарится порядка 50-70% кода для обоих платформ
Вообще пока задумка писать формы на F#, вообще не прибегая к Xaml, так как будет немного громоздко, но не так много. Возможно, да, не плохо использовать стандартный для платформы UI, но над этим ещё есть время подумать.

В основном нужна удобная навигационная модель, понятная привязка обновляемых свойств и такие контролы как листы, сетки, кнопки

Pavel
12.03.2018
17:55:20
В основном нужна удобная навигационная модель, понятная привязка обновляемых свойств и такие контролы как листы, сетки, кнопки
если вопрос о том как удобно и привычно пользователям, то формы по любому не вариант. если мнением пользователей можно пренебречь (внутрение бизнес приложения) то можно и поформить

?‍?
12.03.2018
18:09:30
в формах слишком много ручника. и полное отсуствие визуальности. что xaml что без него.
Я ещё не настолько разобрался в Xamarin / Xamarin.Forms, но второе мне понятно и оно работает, и вроде как кросс платформенно. Ремарка: до 2018 писал под Windows (в том числе UWP), пробую Android на вкус с января, F# около недели, до этого хороший опыт C# от их 4 редакции до сих 7.2, Visual C++ ну и скриптовые/запросные иногда по работе. Из проектов есть хороший опыт создания собственных форм со всеми анимациями и переходами, так что надеюсь знакомые по архитектуре Xamarin.Forms дадут сделать достаточно, в целом интерфейса на деле не так много требуется (много, но терпимо, чтобы не закопаться)

Основная пока проблема, это отставание Xamarin от Net Standard 2.0, невозможность отладки при связке F# dll с C# dll (exe), и поддержка Android только F# 4.0.0.1 (версии выше ругаются на BigInteger)

Sergey
12.03.2018
18:53:39
F# Weekly #10, 2018 – fsharpConf 2018 & tons of F# improvements in VS 15.6 https://sergeytihon.com/2018/03/12/f-weekly-10-2018-fsharpconf-2018-tons-of-f-improvements-in-vs-15-6/

Roman
12.03.2018
18:56:00
Интересно, а через DU можн как-то выразить все возможные выборки Типа ОТ = . -> +∞ ДО = -∞ -> . ОТ ДО = . -> . ДО ОТ = -∞ -> . U . -> +∞
Да, но придется самому написать функции, определяющие вхождение элемента в указанное множество

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