Andrew
21.02.2018
10:37:28
хотя не, не сходится
ты прав, похоже на семантику ref\val
но нафига делать ref 1?
это такой адовый боксинг?
Google
Vlad
21.02.2018
10:40:03
рассуждать про этот язык не даёт навязчивая мысль "зачем они его сделали?" :) на вид наверное хотели эмбеддить куда-то, но чего было не взять уже существующее нипанять :(
Vasily
21.02.2018
10:41:04
Artemy
21.02.2018
10:41:40
Про использование if ... else if.. вместо swtich ... case... , а также использование binarytree вместо Hash можно мемасик про сверхразум запилить.)
Andrew
21.02.2018
10:45:39
Artemy
21.02.2018
10:46:44
Ну тут же if/else if как преимущество над switch...case... показывается
Vlad
21.02.2018
10:46:52
А что не так с if/else?
непосредственно с ними всё так, а вот то что они предлагают switch заменить на if/else уже как-то не очень
Artemy
21.02.2018
10:46:54
Обычно именно превосходство в сравнениях языков подразмуевается. Мол, самые классные фичи демонстрируются.
Andrew
21.02.2018
10:47:50
Имхо это не преимущество, а просто пример того, как аналогичное сделать на их языке
Vasily
21.02.2018
10:48:56
Для поддержки switch/case удобнее по идее
Чисто визуально, хоть и синтаксический сахар
Anna
21.02.2018
10:49:47
Vlad
21.02.2018
10:50:50
просто язык то преподносится как функциональный и как-то наивно ожидается что в качестве замены тривиальному switch нам сразу предложат что-то помощнее а не пачку if-ов
Google
Andrew
21.02.2018
10:51:40
Artemy
21.02.2018
10:52:16
Vasily
21.02.2018
10:52:17
Скажу больше
Скорее всего это даже не их язык
А Area9
Кстати, на фото гендерно-расовый шовинизм
Vlad
21.02.2018
10:53:29
> и конечно же Flow (функциональный язык разработанный в недрах компаний Area9 и Ланит-Терком).
Aleksander
21.02.2018
10:54:23
Да, скорее всего, Area9 лет 30 назад свой язык запилили, написали на нем пару сотен миллионов строк, и теперь кому-то это надо поддерживать)
Vasily
21.02.2018
10:54:41
http://www.math.spbu.ru/user/ant/all_articles/065_Terekhov_Erlikh_preodolenie_razryva.pdf
Похоже, статья одного из авторов языка
Проблема переводных изданий, она такая, конечно
Насущная была в 70-80х годах
https://haxe.io/wwx/2016/Maxim-Bekhterev/
Вроде оно
Короче, нашлепка над Haxe
В целом похоже на тупик для программистов
Andrew
21.02.2018
11:06:08
Вообще для обсуждения дизайна языков есть отдельный чатик ;)
Vasily
21.02.2018
11:06:25
Я про него ничего не знаю
Но в целом заканчиваем с офтопом, да
Google
Andrew
21.02.2018
11:06:34
@CompilerDev
В основном там все те же лица :)
Vlad
21.02.2018
11:17:15
Andrew
21.02.2018
11:51:38
A64m
21.02.2018
11:52:19
его просто в идрисном чате недавно прорекламировали
Kirill
21.02.2018
12:19:37
Andrew
21.02.2018
12:20:27
Artemy
21.02.2018
13:07:33
Igor
21.02.2018
13:09:02
A64m
21.02.2018
13:09:22
да
Roman
21.02.2018
13:31:03
https://github.com/fsharplang-ru/general/issues/3
Обсуждали?
Evgeniy
21.02.2018
13:33:41
Сергей
21.02.2018
13:42:57
Vasily
21.02.2018
14:01:52
Какой интересный пример кода :
// Transaction list -> Expense list
let rec getExpenses transactions =
getExpenses' transactions []
and getExpenses' transactions expenses =
match transactions with
| [] -> expenses
| x :: xs ->
match x with
| Debit expense ->
getExpenses' xs (expense :: expenses)
| _ -> getExpenses' xs expenses
type Money = Money of decimal with
// Money * Money -> Money
static member (+) (Money m1, Money m2) = Money (m1 + m2)
static member Zero = Money 0m
Вот это конечно очень круто
Взято отсюда: https://www.demystifyfp.com/fsharp/blog/adding-meaning-to-primitive-types-in-fsharp/
Evgeniy
21.02.2018
14:35:56
Еще можно повесить на Money аннотацию [<Struct>], тогда будет бесплатная абстракция.
Roman
21.02.2018
15:51:02
Google
Roman
21.02.2018
16:17:39
Evgeniy
21.02.2018
16:27:42
Поясни
DU компилируются в классы, ссылочные типы, они аллоцируются в куче. Если повесить аннотацию [<Struct>], то DU скомпилируется в структуру, value type — аллоцируются на стеке и имеют семантику значений.
В случае single case DU аннотация [<Struct>] позволяет избавиться от какого-либо оверхеда, связанного с аллокацией в куче и сборкой мусора.
Admin
Andrew
21.02.2018
16:27:54
Поясни
Пояснишь за бесплатные абстракции? :)
Roman
21.02.2018
17:10:18
Evgeniy
21.02.2018
17:14:06
Не задумываешься, у тебя как decimal хранится, так и Money.
Klei
21.02.2018
19:05:45
Most
21.02.2018
19:47:38
кому-нибудь не core\standard приложения приходилось в райдере открывать?
Evgeniy
21.02.2018
20:07:07
https://twitter.com/panesofglass/status/966363627363160071
Most
21.02.2018
20:08:25
попытался cloudAgent открыть
у меня чего-то райдер не подхватил полный фреймворк, думал может у меня траблы)
ладно, спасибо, буду разбираться
Roman
21.02.2018
23:12:34
Evgeniy
22.02.2018
06:41:00
Какие чудесные примеры!
https://github.com/eiriktsarpalis/TypeShape/blob/master/samples/hashcode-staged.fsx
Привет.
Никита
22.02.2018
10:29:58
Привет)
Friedrich
22.02.2018
13:32:03
Evgeniy
22.02.2018
13:38:03
Ух.
https://github.com/fsharp/fslang-suggestions/issues/647
Ну, это просто абстрактные хотелки, есть штука поважнее.
https://github.com/Microsoft/visualfsharp/pull/4368
Google
Roman
22.02.2018
13:59:10
Evgeniy
22.02.2018
13:59:28
Roman
22.02.2018
14:01:19
Привет!
aman
22.02.2018
14:04:16
привет всем
Roman
22.02.2018
14:05:04
Как у тебя с F#?)
aman
22.02.2018
14:05:49
изучаю
Roman
22.02.2018
14:05:57
Круто)
aman
22.02.2018
14:34:33
я аман из индия
Evgeniy
22.02.2018
14:35:48
Hi!
aman
22.02.2018
14:36:56
?
Friedrich
22.02.2018
14:56:38
я аман из индия
The right would be "Аман из Индии", learn the cases. You should've used the genitive (I think they call it such?) here.