@Fsharp_chat

Страница 518 из 772
Fill
19.03.2018
19:35:39
технически - в смысле мы не имеем права это делать и не сможем сделать так, чтоб имели

Roman
19.03.2018
22:11:41
Привет!

Most
19.03.2018
22:45:05
https://www.microsoftevents.com/profile/form/index.cfm?PKformID=0x3784972abcd

может кому пригодится

Google
?‍?
20.03.2018
05:56:34
Такие вот полезные конструкции цепочек событий?

Klei
20.03.2018
06:02:10
Подобное большинство местных наверное писало.

?‍?
20.03.2018
06:03:44
Подобное большинство местных наверное писало.
Помимо веба применяли? Хотелось бы больше примеров на эту тему. (не обязательно код, а перечисление областей применимости)

Klei
20.03.2018
06:08:09
Помимо веба применяли? Хотелось бы больше примеров на эту тему. (не обязательно код, а перечисление областей применимости)
Я щас на gjallarhorn по примеру товарища попиливаю прожку на wpf. Даже без использования bindable гораздо лучше выглядит чем классические vm.

Pavel
20.03.2018
06:11:32
Вот это интересно звучит
Не рекомендую. WPF на C# + ReactiveUI - значительно лучше чем gjallarhorn

?‍?
20.03.2018
06:15:07
Не рекомендую. WPF на C# + ReactiveUI - значительно лучше чем gjallarhorn
Я не о gjallarhorn. В целом реализация обновлений забиндженых свойств и так проворчивается через цепочку событий, у меня есть данные для отображения и реакции, по которым данные меняются, вот и думаю где тут много реактива может быть

Pavel
20.03.2018
06:15:58
Ну оно тут и есть, чего думать-то?

?‍?
20.03.2018
06:17:39
Ну оно тут и есть, чего думать-то?
Например, не через тот интерфейс, что имеется по дефолту, а через свой самописный (типа флутера?), где графический API всё рисует, а реактив обновляет.

Google
Pavel
20.03.2018
06:19:20
Но зачем?

?‍?
20.03.2018
06:19:38
Но зачем?
Кросс-платформенность?

Pavel
20.03.2018
06:20:52
Если есть IObservable в стд-либе + ReactiveUI как биндинг между Observable, командами и UI фреймворками

+ Rx для хранения стейта

Кросс-платформенность?
Что именно должно быть кросс-платформенным?

?‍?
20.03.2018
06:24:03
Что именно должно быть кросс-платформенным?
UI. Такой UI типа нескольких рамок, которые катаются по сетке через свайпы, но это, наверно, надо обсуждать в другом чате.

Pavel
20.03.2018
06:24:47
Возьми Electron + React + Rx

Или React Native если ресурсы несколько UI писать позволяют

Evgeniy
20.03.2018
07:08:36
https://twitter.com/sforkmann/status/975985495917330432

Кто-нибудь уже пробовал?

Fill
20.03.2018
07:34:02
А хочется перевести?
да. Всё равно я перевожу её, пока читаю

Evgeniy
20.03.2018
07:34:44
Ну, это немного разная "работа". :)

Я думаю нет, мы не можем ее переводить.

Fill
20.03.2018
07:35:52
Потому что это книга, и что б её перевести, нужно её издавать в рф или что-т о вроде того

Но я для себя всё же буду переводить

Evgeniy
20.03.2018
07:36:22
Ок.

Fill
20.03.2018
07:37:02
А если положить в приватную репу, мы всё равно нарушаем какие-то права, как думаешь?

Bonart
20.03.2018
07:41:05
Потому что это книга, и что б её перевести, нужно её издавать в рф или что-т о вроде того
Это вряд ли. Другое дело, что перевод есть зависимое произведение, а значит требует согласования с владельцем прав.

Evgeniy
20.03.2018
07:43:38
Это вряд ли. Другое дело, что перевод есть зависимое произведение, а значит требует согласования с владельцем прав.
Ну, в ситуации с Apress, кажется, это действительно так. > If you are a translator, please note that it is our policy to grant options only to publishers or organizations.

Bonart
20.03.2018
07:44:21
Хм - а как организации попросить нельзя?

Google
Evgeniy
20.03.2018
07:47:36
Нужно, чтобы кто-то этим занялся. И это немного более серьезная работа, чем "перевожу для себя, пока читаю".

Fill
20.03.2018
07:49:05
Evgeniy
20.03.2018
07:51:47
Я к тому, что нужно или серьезно браться и переводить (для этого нужны время и навыки), или свои записи хранить в приватной репке.

Блин, у нас @Snowfall0 куда-то пропал. :С Обещал перевод статьи про жирафа.

Fill
20.03.2018
07:54:57
Вот мой план - я напишу перевод небольшого кусочка, попрошу кого-нибудь из чатика посмотреть, и если норм, буду думать над тем, как это дело продолжить с учётом всех обстоятельств

Evgeniy
20.03.2018
07:56:51
Ок.

Roman
20.03.2018
08:10:37
@akleandrov то что есть сейчас с твоим переводом по твоему мнению можно публиковать?

Или надо дорабатывать?

?‍?
20.03.2018
10:33:38
Подскажите, есть ли принципиальное отличие в записях: let Positive = fun (value : int<'t>) -> (>) value 0<_> let inline Negative (value : int<'t>) : bool = (<) value 0<_> И можно ли свернуть ещё сильнее?

?‍?
20.03.2018
10:52:48
Функция Negative будет инлайнится по месту вызова.
Помимо inline? (не вставил inline, так как не понимаю куда его туда поставить, и если можно, то куда? или в этом нету смысла и функция и без того встроется)

Evgeniy
20.03.2018
11:00:59
С точки зрения IL — разницы никакой.

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

А вот записать короче в присутствии единиц измерения, наверное, не получится.

@yerumaku А чего у тебя кодстайл такой странный? Названия функций обычно с маленькой буквы пишут.

Vlad
20.03.2018
11:06:21
0<_> случаем не Unchecked.defaultOf<_> ?

Evgeniy
20.03.2018
11:06:40
Vlad
20.03.2018
11:07:32
Зачем?
ну зачем это скорее про функцию, которая может определить > < 0 для ссылочного типа)

Evgeniy
20.03.2018
11:09:29
0<_> случаем не Unchecked.defaultOf<_> ?
Generic zero лучше отображает намерения данной функции. :)

Google
?‍?
20.03.2018
11:12:09
0<_> случаем не Unchecked.defaultOf<_> ?
Например: let Positive = fun (value : int<'measure>) -> (>) value 0<_> <=> let Positive = fun (value : int<amperage>) -> (>) value 0<amperage> let Positive = fun (value : int<potential>) -> (>) value 0<potential>

Pavel
20.03.2018
11:18:15
let Positive<[<Measure>] 't> : int<'t> -> bool = (<=) 0<_>

?‍?
20.03.2018
11:21:12
Evgeniy
20.03.2018
11:22:01
let Positive<[<Measure>] 't> : int<'t> -> bool = (<=) 0<_>
Не то чтобы это сильно короче и понятнее.

Но point-free зато.

?‍?
20.03.2018
11:22:17
let Positive<[<Measure>] 't> : int<'t> -> bool = (<=) 0<_>
Вообще ругается на явность параметра

?‍?
20.03.2018
11:23:31
4.3.4, локальненько не захотел

Evgeniy
20.03.2018
11:27:01
В общем лучше всё же писать как записана Negative? Не понимаю как заменить ' на ^
Самый читабельный и эффективный вариант: let inline negative value = value < 0<_>

Point-free большого смысла здесь не имеет.

?‍?
20.03.2018
11:39:32
let Positive<[<Measure>] 't> : int<'t> -> bool = (<=) 0<_>
Оффтоп. Частный случай, тут (<=) не подходит, тк нужно отдельно рассматривать попадание на границу (в примере это константа нуль). Оффтоп. Вот есть у меня функция PositiveMask, как её принято будет именовать, если она будет использоваться (например) из C#?

?‍?
20.03.2018
11:56:08
Для этого случая есть атрибут CompiledName. В F# будет одно имя, а у пользователя в C# — другое.
За атрибут спасибо! А в коде F# как её тогда именовать? positiveMask | positive_mask

Evgeniy
20.03.2018
11:58:02
Остальные правила можно тут посмотреть. https://github.com/dungpa/fantomas/blob/master/docs/FormattingConventions.md

@antyadev https://medium.com/@tonerdo/unit-testing-datetime-now-in-c-without-using-interfaces-978d372478e8

Я думал, что в докладе были шутки. ?

Anna
20.03.2018
12:42:08
Я думал, что в докладе были шутки. ?
это всё только потому, что функция не принимает какое-нибудь время, а используется хардкод Now?

Evgeniy
20.03.2018
12:42:17
Да.

Google
Pavel
20.03.2018
12:50:45
Только что спрашивали, что Moq не умеет мокать на собеседовании :-(

Roman
20.03.2018
13:52:34
Мобильный Гитхаб теперь позволяет добавлять реакции)

?‍?
20.03.2018
14:10:07
[<Measure>] type s let xs = [ -1<s>; 0<s> ] let f o = xs |> Seq.filter (fun e -> o > e) |> Seq.length [-2<s>; -1<s>; 0<s>; 1<s>] |> List.map f
Позже разберу. В целом собирался использовать негативную маску для списка + позитивную маску для списка тех же значений, чтобы получать уникальные флаги и от них уже получать уникальное состояние

[<Measure>] type s let xs = [ -1<s>; 0<s> ] let f o = xs |> Seq.filter (fun e -> o > e) |> Seq.length [-2<s>; -1<s>; 0<s>; 1<s>] |> List.map f
Допустим анализ крови, есть норма вещества (расчёт из др. функции), в анализе конъюнкция веществ, отклонение которых даёт основание упорядочить возможные диагнозы. Тут уже как минимум важен порядок, а не количество. (Плюс, в списке разные measure, что, конечно, легко лечится)

Vasily
20.03.2018
14:56:08
Decision tree же

?‍?
20.03.2018
15:00:02
Decision tree же
Видимо надо больше примеров по ним, не вижу как тут применить удобно, по китайски вкладывать match в match не хочется.

Vasily
20.03.2018
15:01:32
У Марка Симана в блоге был пример, помнится

Roman
20.03.2018
15:20:18
Прчем тут F#?

Evgeniy
20.03.2018
15:20:46
Прчем тут F#?
Блокчейн на F#!

Roman
20.03.2018
15:21:17
Блокчейн на F#!
В группе ризонмл тоже спам

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