
Pavel
27.03.2018
15:22:52
http://reactivex.io/documentation/operators/do.html
Правда, do - ключевое слово в F#

Владислав
27.03.2018
15:24:37
та мне в C# надо добавить, просто не знал как его бы назвать)

Pavel
27.03.2018
15:24:46

Google

Pavel
27.03.2018
15:25:22
Ну вобщем в Reactive Extensions оно называется .Do
https://msdn.microsoft.com/en-us/library/hh229659(v=vs.103).aspx

Dmitri
27.03.2018
15:31:20

Roman
27.03.2018
15:35:18

Vladimir
27.03.2018
16:54:03
А подскажите, есть уже где-то в либе готовые монадки для Result и Option?

Roman
27.03.2018
16:54:49

Vladimir
27.03.2018
16:55:01
наверное)

Alexey
27.03.2018
16:56:48
Есть Chessie , но со своими Result'ами

Roman
27.03.2018
16:57:02
типа
let nonOptionalZero = option {
let! thisNotOptionIsZero = Some 0
let optionalZero = Some 0
return! Some 0
}
?

Pavel
27.03.2018
16:57:25
ExtCore

Vladimir
27.03.2018
16:57:28
ага

Roman
27.03.2018
16:57:31
ExtCore
https://github.com/jack-pappas/ExtCore

Google

Pavel
27.03.2018
16:58:19
Оно

Vladimir
27.03.2018
16:58:52
Спс, гляну

Evgeniy
27.03.2018
16:58:58
В них же еще есть asyncMaybe и asyncResult.
Но, кажется, еще никто не написал taskMaybe и taskResult. Хорошая идея для библиотечки.

Alexey
27.03.2018
17:01:51
Думаю в таком случае лучше пытаться контрибьютить в тот же ExtCore

Evgeniy
27.03.2018
17:02:25
Ну, вряд ли в ExtCore захотят тащить зависимость от TaskBuilder.fs. Поэтому лучше отдельно?

Alexey
27.03.2018
17:02:31
Чем отдельный noname пакет с 30 строчками кода
https://github.com/jack-pappas/ExtCore/blob/master/ExtCore/Control.Tasks.fs
У них он уже есть

Roman
27.03.2018
17:08:15

Evgeniy
27.03.2018
17:13:55
И его сейчас в Giraffe используют.

Roman
27.03.2018
17:15:19

Evgeniy
27.03.2018
17:15:30

Roman
27.03.2018
17:15:46
от конкретног офайла? paket удобный)

Evgeniy
27.03.2018
17:16:07
https://github.com/rspeele/TaskBuilder.fs

Roman
27.03.2018
17:16:19

Evgeniy
27.03.2018
17:17:16
Хорошая библиотека. Работает со всеми "awaitable" штуками, и пытается изображать стейт-машину внутри.

Google

Evgeniy
27.03.2018
17:17:45
Работает, насколько я помню по бенчмаркам, чуть медленее, чем async/await в C#.
Vladimir поправит. :)

Vladimir
27.03.2018
17:19:00
Я не бенчмаркал сравнение с сишарпом) Скоро новый хайлоудкап, можно там будет побенчмаркать)

Evgeniy
27.03.2018
17:19:18
Ок, я запускал какие-то бенчмарки, которые с библиотекой идут.
Там порядок бы навести, прицепить BenchmarkDotNet.

Дмитрий
27.03.2018
17:30:24
У кого-то есть опыт написания одного солюшена на 2 языках .нета?
конкретно - веб. Например, проектирование и написание веб апи приложения на c# меня полностью устраивает, но вот логику всяких валидаций, обработок данных, фоновых процессов я бы попробовал написать на чем-то менее многословном

Alexey
27.03.2018
17:33:19
Мы такое практикуем

Дмитрий
27.03.2018
17:33:55
ну, на самом деле никаких конкретных вопросов нет. Просто сам факт интересен делает ли кто-то так
Спасибо за ответ)

Roman
27.03.2018
18:19:13
https://github.com/maestrow/ffparsec !!
?? noteName FSharp
https://github.com/pedromsantos/vaughan

Roman
27.03.2018
18:41:26
Если бы проект с нуля писал, то, наверное, на C# только контроллеры бы делал, все остальное, даже DAL скорее всего писал бы на F#.

Ivan
27.03.2018
19:18:16
После выхода ASP.NET Pages даже контроллеры не нужны. Только вьюхи
А для апи MVC - overengenirinn
А когда запилят string interpolation - нам собственно и движка для вьюшек не надо

??
27.03.2018
19:29:17
Даже игровой клиент на F# под мобилки можно ?

Ivan
27.03.2018
19:31:54
Пока нет нативной поддержки спанов, С# в ближней перспективе лучше.
Для игр. Но поддержка ref struct я думаю не задержится. Там по моим предсталениям не так сложно.
Через систему прокатить нвый тип InStack<'t>, который не может быть field member у не InStack<'t> типа

??
27.03.2018
19:38:56

Google

Ivan
27.03.2018
19:39:25
как ref struct в C#
плюс синтакс шугар - без InStack - это обычный тип. Что то обратное Box<T> в Rust

Evgeniy
27.03.2018
20:15:17
https://twitter.com/sergey_tihon/status/978719212016463873
Это же @sergey_tihon!

Roman
27.03.2018
21:22:16
Привет!

Xak
27.03.2018
21:42:35

Roman
27.03.2018
22:46:18

Evgeniy
28.03.2018
04:16:01
Мемы.
https://twitter.com/richturn_ms/status/978746397133434880?s=19

Roman
28.03.2018
06:47:46

Vlad
28.03.2018
06:54:39

Evgeniy
28.03.2018
06:58:10
Когда-нибудь я снова создам стикерпак про фишурп.
И там будут все эти мемы.

Vladimir
28.03.2018
07:36:41

Roman
28.03.2018
08:01:15

Bonart
28.03.2018
08:02:29

Igor
28.03.2018
08:03:08
> CPU-bound
> async/await task
?

Vladimir
28.03.2018
08:04:06

Pavel
28.03.2018
08:06:12
Suave на latest mbp отдаёт не больше 9к в секунду
Кестрел делает под 100к в секунду

Google

Igor
28.03.2018
08:06:38

Pavel
28.03.2018
08:06:47
GoLang подобный сервак даёт под 200к
Да, hello world

Vasily
28.03.2018
08:07:29
Коллеги, напомните мне одну штуку - у нас для примитивных типов есть аббревиатуры типа 0L ?

Bonart
28.03.2018
08:07:40

Vasily
28.03.2018
08:08:05
В смысле я хочу записать let a =0, где а должен быть uint64

Pavel
28.03.2018
08:08:08
Я не понял, почему оно ключевое?

Klei
28.03.2018
08:08:33

Vasily
28.03.2018
08:08:44
А ссылкой киньте

Pavel
28.03.2018
08:08:48
UL вроде нет

Vasily
28.03.2018
08:08:56
Где на аббревиатуры глянуть
А то я тут один DSL пишу для хитрого бинарного протокола

Vladimir
28.03.2018
08:09:23
https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/literals

Vasily
28.03.2018
08:09:50
О, правильное слово литерал. Vladimir , респект

Vladimir
28.03.2018
08:10:17
YW

Pavel
28.03.2018
08:11:55
Кстати, посмотри ещё на Hex type provider
Там где литералы не подходят.