@Fsharp_chat

Страница 308 из 772
Снежный
13.09.2017
10:10:11
^)

:)

те в примере, что писать в do ea.Subscribe(?????????)

Vasily
13.09.2017
10:11:11
То же самое

Google
Летучая
13.09.2017
10:11:13
те в примере, что писать в do ea.Subscribe(?????????)
Всё хорошо там написано, просто допиши as this после названия типа.

kana
13.09.2017
10:13:49
Чё там за ду? Не синтаксис для монад же

Evgeniy
13.09.2017
10:14:11
Чё там за ду? Не синтаксис для монад же
https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/functions/do-bindings

kana
13.09.2017
10:14:12
(уже загуглил, поборол свою лень)

Спасибо

Летучая
13.09.2017
10:17:00
@snegniy_bars разобрался? :)

Снежный
13.09.2017
10:17:44
ин прогресс :)

о! спасибо, заработало

:)

Aleksander
13.09.2017
10:24:31
о, у Касперского появилась вакансия с C# / F# :)

Vasily
13.09.2017
10:25:36
Andrew
13.09.2017
10:25:50
"Ни один нормальный C#-разработчик к нам не идет, может хоть среди сообщества F# найдутся смелые отчаянные люди"?

Evgeniy
13.09.2017
10:26:18
Кириченко устал, наверное
Я у него в твиттере видел фотографии из Дублина. Но это на уровне сплетен и догадок, конечно.

Google
Vasily
13.09.2017
10:26:36
Да в Касперском много людей с раздутым ЧСВ

Vasily
13.09.2017
10:26:48
Они ищут каких-то странных людей

И да, я там был несколько раз на собеседованиях в разные года

Nikolay
13.09.2017
10:27:15
Aleksander
13.09.2017
10:27:26
Не забанят?)

Evgeniy
13.09.2017
10:27:36
Не забанят?)
Нет. За что?

Aleksander
13.09.2017
10:27:43
https://samara.hh.ru/vacancy/22593308

Evgeniy
13.09.2017
10:28:37
@akhanteev У нас есть какие-нибудь .NET тусовки, где можно про F# рассказывать?

Nikolay
13.09.2017
10:29:03
https://samara.hh.ru/vacancy/22593308
Вроде требования норм, а там хз как по факту

Evgeniy
13.09.2017
10:29:34
Aleksander
13.09.2017
10:29:56
Вроде требования норм, а там хз как по факту
Сейчас по .NET что-то глухо все, больше Java.. Но мы @nevoroman привозили прошлой осенью)

на ITSubbotnik

Nikolay
13.09.2017
10:30:31
А то я с джавистами обычно тусуюсь. :)
У вас хоть есть с кем потусовать

У нас вообще глухо

С верстальщиками, разве что

Vasily
13.09.2017
10:31:59
Я на таких собеседованиях обычно срезаюсь. Интервьюер пытается найти во мне родственную душу и начинает спрашивать всякую хрень типа "а как оно там все внутри устроено"

Ну и обычно интервьюерам почему-то надо показать, какие они умные

Не знаю, почему

Google
Evgeniy
13.09.2017
10:39:07
Чё там за ду? Не синтаксис для монад же
Синтаксис для монад называется Computational Expressions.

Vasily
13.09.2017
10:39:30
Билдеры жеж

Evgeniy
13.09.2017
10:39:48
Ага, они.

Aleksander
13.09.2017
10:40:54
@gsomix У тебя уже есть какая-то тема для доклада?

Evgeniy
13.09.2017
10:41:48
@gsomix У тебя уже есть какая-то тема для доклада?
Меня сейчас property-based testing интересует. Можно подготовить.

Astmatik
13.09.2017
10:42:40
Парни, а ведь под виндой FAKE получается вообще не нужен?

Aleksander
13.09.2017
10:42:47
Да, я тоже недавно посмотрел на FsCheck, интересная штука :) Хорошо, буду иметь ввиду, если что-то появится - дам знать)

Vasily
13.09.2017
10:47:39
Парни, а ведь под виндой FAKE получается вообще не нужен?
Ну если не нравится msbuild, то можно и в нем

Friedrich
13.09.2017
12:15:25
Проверять, что у Record1 и Record2 есть общие поля (id), и сообщать пользователю о том, что нужно правильную аннотацию типа указать?
Боюсь, тут будет непросто сделать исправление. Получается, что в случае, если вдруг компилятор не нашёл какие-то поля в рекорде (x), он должен просматривать все окрестные рекорды на предмет того, что у них совместимый набор полей (но есть ещё и поле x). И дописывать такое в месседж: there's a similar type Record2 found; missing type annotation?.

Vasily
13.09.2017
12:15:59
Причем надо по всем скопам вверх идти еще

Friedrich
13.09.2017
12:18:56
Да, надо иметь список всех типов, которые видны в данном месте.

Ну, по описанию звучит не очень сложно, но без понимания внутренностей компилятора можно какое-то время прокопаться.

Парни, а ведь под виндой FAKE получается вообще не нужен?
Я не понял мотивации. Почему под виндой не нужен, а под другими ОС нужен? В чём тут разница?

На студию какой-то очередной апдейт вышел (15.3.4). Кто-нибудь ставил? Там починили F# или ещё нет?

Artemy
13.09.2017
12:30:25
А что сломано было?

Friedrich
13.09.2017
12:37:40
Неткоровые проекты, вроде.

Всё ещё плохо, короче. Файлы в проектах нельзя упорядочивать.

Dmitriy
13.09.2017
12:53:25
@akhanteev У нас есть какие-нибудь .NET тусовки, где можно про F# рассказывать?
В Санкт-Петербурге fprog spb https://spb-fp-meetup.timepad.ru/events/ Собираются раз в месяц еще есть spb .net community https://spbdotnet.timepad.ru/events/ Выступал и там и там очень приятные сообщества.

Кстати сейчас началась подготовка к ежеквартальной большой встрече ИТ митапов: http://piter-united.ru Можно рассказать на большую аудиторию.

Roman
13.09.2017
13:15:57
@akhanteev У нас есть какие-нибудь .NET тусовки, где можно про F# рассказывать?
Можешь обращаться по поводу SPB .NET Community, я один из организаторов. Нам как раз спикеры нужны :)

Google
Anton
13.09.2017
13:20:12
@nevoroman а приедешь к нам в Минск что нибудь порассказывать про F#? =)

Friedrich
13.09.2017
13:22:07
Вот же.
Это .NET Core?

Astmatik
13.09.2017
13:22:15
нет

Friedrich
13.09.2017
13:22:27
В обычных проектах не ломали ничо, там всё работает :)

Кстати, кто-нибудь понял, куда они девали компилятор в .NET Core 2.0?

Вот проектный файл от .NET Core 2: https://github.com/ForNeVeR/nightwatch/blob/64ad03de1a11a5373b1ca94194e1883bf515a723/Nightwatch/Nightwatch.fsproj В нём нет упоминаний FSharp.Net.Sdk, FSharp.Core, FSharp.Compiler.Services, ничего.

Это... пугающе.

Roman
13.09.2017
13:31:18
Он вроде про Самару спрашивал)
Оу, я слепой! Но там недавнл появилось SarDotNet комьюнити :)

@nevoroman а приедешь к нам в Минск что нибудь порассказывать про F#? =)
Пригласят - приеду! Но вообще я через некоторое время планирую уехать в Германию и все такие поездки станут сложнее

Nikolay
13.09.2017
13:32:07
Это... пугающе.
Я давно про это говорил) Они по типу проекта определяют всё теперь

.fsproj, значит F#

Friedrich
13.09.2017
13:34:05
Я давно про это говорил) Они по типу проекта определяют всё теперь
Не совсем так. В солюшене там ещё торчит какой-то гуид.

Этот гуид известен лишь тем, что Rider любит его портить :)

Anton
13.09.2017
13:42:45
.fsproj, значит F#
ну, блин - логично! =)

Nikolay
13.09.2017
13:43:22
ну, блин - логично! =)
Ну в .Net Core 1.1 решили что это не логично, и надо писать F# Sdk :)

Anton
13.09.2017
13:43:35
лол

Astmatik
13.09.2017
14:27:14
парни, а как определить функцию с двумя параметрами, где оба типизированы?

Google
Astmatik
13.09.2017
14:27:30
let add x:int, y:int = x + y

это не работает

Roman
13.09.2017
14:27:49
Параметры в скобочках должны быть

Astmatik
13.09.2017
14:28:10
let add (x:int, y:int) = x + y

Vlad
13.09.2017
14:28:29
let add (x:int, y:int) = x + y
Отдельные скобочки)

Astmatik
13.09.2017
14:28:43
омг, спасибо)))

Vlad
13.09.2017
14:28:45
Иначе кортеж принимаешь

Astmatik
13.09.2017
14:28:58
да да, сигнатура меняется

Andrew
13.09.2017
14:33:33
а если нужно типизированный кортеж?

add (x, y):Tuple<int, int> ?

Летучая
13.09.2017
14:56:51
Andrew
13.09.2017
14:57:20
ах да, точно

в F# только сигнатуру так принято записывать, или там подлежащий тип кортежей тоже свой?

Летучая
13.09.2017
14:59:46
a * b — это Tuple<a, b> struct(a * b) — это ValueTuple<a, b>

Astmatik
13.09.2017
15:26:15
еще один вопрос - как обойти/генерализовать несовпадение типов в аргументе функции?

допустим есть:

type Something = { mutable Id : string } let storeSomething (session: Raven.Client.IDocumentSession) (something) = session.Store(something) session.SaveChanges() something.Id

и я вызываю storeSomething cо вторым аргументом типа: type Opponent = { mutable Id : string Name : string }

This expression was expected to have type Something but here has type Opponent

Летучая
13.09.2017
15:29:18
?

Astmatik
13.09.2017
15:30:04
Opponent совместим с Something

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