@Fsharp_chat

Страница 62 из 772
Artemko
21.04.2017
19:51:22
Нет, мне ни к чему

Pavel
21.04.2017
19:51:38
Aws если точнее. Моя бы воля, я бы mono взял.

Roman
21.04.2017
20:56:51
А вообще google: hopac infixes. Я привык и мне удобно, а народ на мой код ругался.
я бы тоже ругался. А если совмещать hopac и FParsec? там общих инфиксных операторов очень много

Igor
21.04.2017
21:00:37
Народ, а в F# нет типа Nothing? Это противоположность типа Any/Obj из теор. категорий.

Google
Roman
21.04.2017
21:02:02
unit?

Igor
21.04.2017
21:02:14
В scala/kotlin с ним можно делать интересные штуки, но возможно что в функ. языке он ненужен

unit?
Не, в ТК он как бы одновременно наследует все типы сразу, те он дочерний тип любого класса

Igor
21.04.2017
21:07:42
интересено, похоже на null )
Ну null это не тип, его не пропишешь в сигнатуре

Igor
21.04.2017
21:08:30
Тем более в .net есть структуры Ну да ладно, в Haskell он есть но не используется так факт. нельзя написать код который принимает или возвращает Nothing, а в Kotlin он используется для всяких процедурных извращений.

Pavel
22.04.2017
04:17:47
Friedrich
22.04.2017
06:02:43
Народ, а в F# нет типа Nothing? Это противоположность типа Any/Obj из теор. категорий.
Обычно всё-таки его ассоциируют с bottom type из теории типов :)

А... я хз как F# с коре живет, только начал сишарпом обмазываться под Линукс.
F# прекрасно живёт с Core, я пользуюсь и гарантирую это.

И миксовать .NET Core проекты C#/F# я пробовал, но только на preview2 пока что. VSCode в этом мне точно не мешала.

Nikolay
22.04.2017
07:20:22
С библиотеками стандартными туго

Google
Friedrich
22.04.2017
07:20:41
Не преувеличивай)
Я не преувеличиваю, а делюсь своим опытом. У меня прям вот идеально всё работает, не вру.

Но это всё лишь моё мнение. Я понимаю, что у других людей нужды другие и опыт может быть другой :)

Nikolay
22.04.2017
07:21:30
Ну вот в этом и дело

Я со своими нуждами уже два раза воткнулся :)

Nikolay
22.04.2017
08:29:51
делись
Http Utilities, EF Core тайп провайдеры

Летучая
22.04.2017
12:45:35
Всё посоны, буду универские лабы на F# писать, решил (это вряд ли кому-то интересно, но держу вас в курсе)

Nikolay
22.04.2017
12:48:16
Эх, а у нас обычно требуют всё на C++ делать

Только по вычмату разрешили на любом ЯП писать

Vasily
22.04.2017
13:10:56
С++ вполне нормальный язык, правда, аккуратности требует

Nikolay
22.04.2017
13:32:35
Никто и не говорит, что он плохой)

Летучая
22.04.2017
13:48:18
В F# есть чото типа C# xml-доков?

Roman
22.04.2017
13:52:45
В F# есть чото типа C# xml-доков?
Там все то самое же

Летучая
22.04.2017
13:57:21
О. Надо было < нажать для комплишена. Можно я ещё тупых вопросов позадаю? Если есть функция fac, то fac 3 * 4 выполнится, как fac (3 * 4) или как (fac 3) * 4?

Artemko
22.04.2017
14:00:12
второе

3 * 4 |> fac

Летучая
22.04.2017
14:07:46
Спасибо!

Friedrich
22.04.2017
14:22:41
Апдейт на VS пришёл. Может, они там починили ссылки между F# и C#-проектами?

Google
Evgeniy
22.04.2017
15:39:57
@fvnever Кажется, давно уже починили. Нет?

Возьму и проверю.

Max
22.04.2017
15:41:27
Есть у кого готовые тестовые таблица csv для ML ?

Friedrich
22.04.2017
15:41:27
Хз, я с тех пор не проверял. В старых проектах, где референсы были, всё ок. А новых я ещё на обычном дотнете не начинал.

Evgeniy
22.04.2017
15:54:19
@fvnever Кажется, не работает.

Friedrich
22.04.2017
15:54:47
:(

Evgeniy
22.04.2017
16:02:10
@fvnever Сейчас даже хуже, чем раньше.

Почему-то говорит, что неймспейсы из C# проекта не определены.

Занятно, перезагрузка солюшна помогла.

Но GoToDef не работает.

Artemko
22.04.2017
16:21:58
VFT ночные билды включены?

Evgeniy
22.04.2017
16:23:19
Да, конечно.

@catlion А у тебя работает?

> Clickable QuickInfo with "go to type" О, выглядит круто.

Artemko
22.04.2017
16:34:04
проверил, не работает

Evgeniy
22.04.2017
17:19:26
@Ogoun Привет.

‏‏Ogoun
22.04.2017
17:20:40
Evgeniy
22.04.2017
17:29:53
https://twitter.com/filpen/status/855764796750344192

Летучая
22.04.2017
21:27:12
Господа, а что вы используете для десктопного гуя на F#?

Google
Летучая
22.04.2017
21:27:19
WPF как-то костыльно заводится. UPD: Не, разобрался. Вроде бы вполне норм, единственный минус — при создании проекта вместо нажатия 1 кнопки надо выполнить несколько действий :)

Andrey
22.04.2017
22:23:08
FsXaml

Friedrich
23.04.2017
06:12:36
Господа, а что вы используете для десктопного гуя на F#?
Это не тот чат, но я всё равно посоветую Avalonia!

Ну а вообще, за интересными подходами посмотри цикл статей про FSharp.Desktop.UI.

Nikolay
23.04.2017
10:03:55
В F# нет возможности написать код типа: if (!isSuccess) { // bla bla bla return; } // bla bla bla

?

Friedrich
23.04.2017
10:12:41
Хм. Вроде бы нет, преждевременный return сделать нельзя.

Можно пробовать делать его в computational workflow-контексте, но скорей всего получится какая-нибудь ерунда :)

Nikolay
23.04.2017
10:15:05
https://gist.github.com/Dolfik1/0fa90146a8f984236485e65294cc047e

Как-то так

Я надеялся, что () эквивалентно будет return; :)

Только во втором if текст другой должен быть, поэтому два разных сделал

Такой себе код, да?)

Roman
23.04.2017
11:01:27
Слишком императивно)

Летучая
23.04.2017
11:02:18
я второй день в f# но

сделай обёртку sendMessageAsync

чтоб в функ стиле вызывать

без скобок

а ваще можно ж else if

Roman
23.04.2017
11:05:33
Обычно если у тебя много if в функции ее можно разделить на несколько

Google
Летучая
23.04.2017
11:06:15
двачну

Или юзнуть match n with | value -> action

Roman
23.04.2017
11:09:40
Или юзнуть match n with | value -> action
Там разные условия

В коде @Dolfik

Летучая
23.04.2017
11:10:04
Там разные условия
Там ваще копипаста

два разных условия приводят к одному и тому же действию

Nikolay
23.04.2017
11:28:24
Там ваще копипаста
Там текст разный должен быть

Ладно, буду писать обёртку

Либо свою библиотеку

Это печально

Evgeniy
23.04.2017
11:40:05
Почему печально?

Напишешь либу, всем польза.

Friedrich
23.04.2017
11:45:10
Я надеялся, что () эквивалентно будет return; :)
Ты немножко неправильно понял семантику. () это просто значение типа unit, оно не влияет на control flow само по себе. Дело в том, что в F# всё, включая тело функции и каждую инструкцию — это экспрешен. Функция всегда возвращает результат последнего вычисленного экспрешена. В тех случаях, когда ты пишешь let foo x = if x then () else () — ты просто объявляешь функцию, которая возвращает одну из веток if.

Evgeniy
23.04.2017
11:46:18
Боди функции -- это экспрешн.

Friedrich
23.04.2017
11:46:30
Боди функшон!

Roman
23.04.2017
11:49:43
Либо свою библиотеку
можно форк сделать

Friedrich
23.04.2017
11:49:53
fork()

Roman
23.04.2017
11:50:04
можно форк сделать
https://github.com/monad/TeleFone

Friedrich
23.04.2017
11:50:44
Чёт не по понятиям сделано: DLL залиты в репу, мейкфайл, ридми нету...

Roman
23.04.2017
11:51:44
Чёт не по понятиям сделано: DLL залиты в репу, мейкфайл, ридми нету...
да, я ж говорю форк надо сделать ) Ну или посмотрет ьчто там есть полезного и свое написать

Friedrich
23.04.2017
11:52:07
Ну да, лицензия норм, взять и поюзать.

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