
Friedrich
30.07.2018
14:33:58
Ну т.е. лично я пока считаю это косяком проекта.

Vasily
30.07.2018
14:34:00
Это я понимаю
Получается, райдер ведет себя более правильно в данном случае
Хотя как быть с оверрайдом настроек, непонятно

Google

Friedrich
30.07.2018
14:35:02

Vasily
30.07.2018
14:35:14
Хммм
Буду знать

Friedrich
30.07.2018
14:35:43
Я тоже не знал, но наш специалист по msbuild подсказал :)

Vasily
30.07.2018
14:36:14
Вопрос в том, как быть с проектами, которые редактируются и там, и там

Friedrich
30.07.2018
14:37:01

евроневидимка
30.07.2018
14:38:04
ебучие китайцы и сюда добрались

Friedrich
30.07.2018
14:38:04
Так, ботов щас закиляем, не троньте

евроневидимка
30.07.2018
14:38:51
Written in C on tablet using Vim and hosted on tablet.

Vasily
30.07.2018
14:38:52
Ну и тянется вся эта бадяга с тех времен, когда нельзя было файлы группами включать в проект

Friedrich
30.07.2018
14:40:00

Google

евроневидимка
30.07.2018
14:40:24

Vasily
30.07.2018
14:40:42
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp2.0</TargetFramework>
<IsPackable>false</IsPackable>
</PropertyGroup>
<ItemGroup>
<Compile Update="RobotName.fs" />
<Compile Update="RobotNameTest.fs" />
<Compile Update="Program.fs" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0" />
<PackageReference Include="xunit" Version="2.3.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.3.1" />
<PackageReference Include="FsUnit.xUnit" Version="3.2.0" />
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
</ItemGroup>

Roman
30.07.2018
14:40:57
Это что?

Vasily
30.07.2018
14:41:00
Такую хрень студия уже не грузит

Friedrich
30.07.2018
14:41:03
Погоди, а для F# разве вообще есть автовключение файлов в проект?
Свой, у меня доступ к сорцам есть.

Roman
30.07.2018
14:41:19
А, круто

Vasily
30.07.2018
14:41:20
Ну я про фшарп, да

Friedrich
30.07.2018
14:41:45
Ну я про фшарп, да
В F# не получится сделать update на этих элементах, потому что их нету в дереве, не?
Ну то есть для fsproj там надо писать инклуд и это должно работать.

Vasily
30.07.2018
14:42:39
В райдере задваивает
Апдейт не получится, да

Friedrich
30.07.2018
14:42:55

Vasily
30.07.2018
14:43:06
exercism.io

Friedrich
30.07.2018
14:43:15
У меня задваивались как-то раз, когда я пытался открыть проект, не устанавливая F# SDK

Vasily
30.07.2018
14:43:15
Регаешься, качаешь хелло волд

Friedrich
30.07.2018
14:43:45
Окей, я чуть позже сам посмотрю эти проекты и разберёмся. Там F#?

Vasily
30.07.2018
14:44:35
Угу
F# на машине установлен

Google

Vasily
30.07.2018
14:55:10
В общем, в случае fsharp там есть над чем подумать, т.к. порядок важен

Friedrich
30.07.2018
14:56:12
Поэтому все обычные проекты нормально отображаются в Rider.
Видимо, там проект какой-то необычный.

Vasily
30.07.2018
14:56:54
ВОзможно
Но с виду вроде ничего особо подозрительного

Evgeniy
30.07.2018
16:31:01
@fvnever Бот не сработал.
Потестил генерацию стабов для записей в Ionide.
Отлично!

Ayrat
30.07.2018
17:09:43
Да, мне тоже крайне понравилось. Работает без нареканий

Roman
30.07.2018
17:13:27

Evgeniy
30.07.2018
17:14:02
https://twitter.com/IonideProject/status/1022582877131821057

Roman
30.07.2018
17:14:14
А, да

Friedrich
30.07.2018
17:19:59
Я вырубил планшет, пока на речке ездил

Evgeniy
30.07.2018
17:20:29
Ок!

Friedrich
30.07.2018
17:21:33
По идее, он сам разгребёт очередь и всех поубивает, когда проснётся.

Evgeniy
30.07.2018
17:25:38
О, работает.
Отлично!
@fvnever Передайте господину Алексу спасибо. ;)

Google

Vlad
30.07.2018
17:26:54

Igor
30.07.2018
17:27:21

Friedrich
30.07.2018
19:15:57
а как убивает?
Ну, он оценивает рейтинг по словам в нике, которые ему не нравятся. Если рейтинг выше порогового значения — банит и удаляет сообщение о входе.

Roman
30.07.2018
19:16:31

Friedrich
30.07.2018
19:16:45

Roman
30.07.2018
19:16:51
А если ложноположительное срабатывание?

Friedrich
30.07.2018
19:17:05

Roman
30.07.2018
19:17:13

Friedrich
30.07.2018
19:17:28
Ну, мы его заточили конкретно на эти дурные ники.

Roman
30.07.2018
19:17:34
Ок

Evgeniy
30.07.2018
19:17:42
Роботы отнимают работу!
?

Friedrich
30.07.2018
19:17:53
MWA HA HA HA

Roman
30.07.2018
19:18:03

Anna
30.07.2018
19:18:30

Vlad
30.07.2018
19:18:31

Friedrich
30.07.2018
19:18:43
Проверил — считаются.

Evgeniy
30.07.2018
19:19:12

Google

Evgeniy
30.07.2018
19:19:34
Так, @gsomix, иди ка в @fsharp_flood, пока не побанил.

アレクセイ
30.07.2018
19:20:19
И где кавалерия

Doge
30.07.2018
20:32:11
Может кто-нибудь подсказать: в F# есть ли до сих пор ограничение на то, что type provider не может генерить DU, модули и другие специфичные для F# типы?

Evgeniy
30.07.2018
20:32:34

Doge
30.07.2018
20:34:43
Да. А есть хороший юзкейс?
Ага, автоматическая генерация Free и сопутствующей машинерии для данного интерфейса. Примерно как вот в такой либе для скалы делается: http://frees.io/docs/core/algebras/
Можно это конечно сэмулировать классами, но как-то тогда уже не очень идиоматично будет выглядеть.

Evgeniy
30.07.2018
20:36:17

Vasily
30.07.2018
20:40:29
А можно для тупых- фри монадки по интерфейсам?

Doge
30.07.2018
20:40:54
Давно не следил в целом за F# экосистемой, поэтому подробности про современное состояние дел с провайдерами не знал, думал вдруг что-то поменялось.
А можно для тупых- фри монадки по интерфейсам?
Суть в том, что любой интерфейс
можно определенным образом выразить через специально сконструированный DU, который можно будет использовать вместе с Free.
Во, даже нашел вроде похожую на правду статью, где как это сделать для случая F# даже подробно расписано: http://blog.ploeh.dk/2017/08/07/f-free-monad-recipe/
См. там пункт Refactor interface to functor и следующий Free monad recipe
Может появиться вопрос: а зачем это нужно и какая практическая польза?
Например, польза в том, что можно таким образом делать referential transparent обертку к каким-то существующим грязным АПИ.
Как пример этого: https://tpolecat.github.io/doobie/ который является таким образом сделанной чистой оберткой над jdbc.


Vasily
30.07.2018
21:42:09
Короче, в скале ща модно final tagless