
Andrew
21.10.2016
21:54:53
я понимаю, что flow распознает использование typeof. Но есть проверки, я уверен, на другие типы, которые flow не умеет распознавать
кстати, что такое "%checks" в примере?

Vladimir
21.10.2016
21:56:53
Именно то, что нужно)

Google

Vladimir
21.10.2016
21:57:00
Помечает функцию как предикат

Andrew
21.10.2016
21:57:05
?
можно ссылку на документацию?

Vladimir
21.10.2016
21:57:21
Т е то что функция проверяет тип

Andrew
21.10.2016
21:57:30
а

Vladimir
21.10.2016
21:57:37
> @andrevinsky
можно ссылку на документацию?
Она отстуствует по какой-то причине полностью
Можно в репозитории посмотреть тесты

Andrew
21.10.2016
21:58:24
опа. а как же мне сказать, что именно true - означает, что val - принадлежит типу string? а не наоборот?
ну то есть, как использовать эти предикаты?
ставить %checks? и все?

Vladimir
21.10.2016
21:59:40
Да, Flow сам определяет
Для деклараций есть свой синтаксис

Andrew
21.10.2016
22:00:05
вон, нашел:
declare function foo(x: mixed): boolean %checks(typeof x === "string");

Google

Vladimir
21.10.2016
22:00:12
ага

Andrew
21.10.2016
22:00:17
спасибо

Vladimir
21.10.2016
22:00:28
Т е по факту нельзя просто указать новый тип

Andrew
21.10.2016
22:00:34
оказывается, туда надо выражение прописать

Vladimir
21.10.2016
22:00:36
И чтобы Flow поверил
Только реалистичные варианты

Andrew
21.10.2016
22:01:12
вопрос связан с тем, что не все типы просто так проверяются на typeof
И горадо удобнее проверка на похищение toString() у Object с применением к переменной, которую надо проверить на тип
И я не уверен, что flow "знает" о такой самостоятельно

Vladimir
21.10.2016
22:02:52
Да, реализация специфическая пока
Но функция очень новая

Andrew
21.10.2016
22:03:33
({}).toString.apply('')
"[object String]"
({}).toString.apply(1)
"[object Number]"
({}).toString.apply([])
"[object Array]"
({}).toString.apply(undefined)
"[object Undefined]"
понятно
спасибо за наводку

Vladimir
21.10.2016
22:04:14
Ну строго говоря эта проверка является слабой и ничего не гарантирует
Возможно в будущем добавят вариант, в котором можно будет просто декларировать, что функция проверяет определенный тип

Aleh
22.10.2016
06:53:19
Ts умеет, но при этом не проверяет правду ли вы сказали

Oleksandr
22.10.2016
06:56:35
в общем случае это невозможно проверить :)

Андрей
22.10.2016
08:30:32

Aleh
22.10.2016
15:39:08

Google

Aleh
24.10.2016
08:11:26
Это в честь чего так?)

Gordey
24.10.2016
08:13:46
чуваки тайпскриптеры, подскажите
ts сам перегоняет в es5? babel не нужен? или все таки нужен?

Aleh
24.10.2016
08:14:39
В 2.1 вроде пофиксили

Дмитрий
24.10.2016
08:15:19
Ну да, короче обычно идёт ts - babel - es5

Gordey
24.10.2016
08:15:21
т.е. ща он самодостаточный?

Aleh
24.10.2016
08:15:41
Ещё в es3 умеет ))

Gordey
24.10.2016
08:16:32
я имею ввиду, что обычно ж как, какой-нить мелочи не хватает и потянул в проект кипу заивимостей чтоб она компилилась

Aleh
24.10.2016
08:16:32
Но мы юзаем async/await

Gordey
24.10.2016
08:18:54
ок, спс

Denis
24.10.2016
10:54:05
https://twitter.com/reicheltp/status/790168101644009472
@vkurchatkin

Vladimir
24.10.2016
11:08:35
дурачье
)

Nikita
24.10.2016
11:50:16
хотя примеры в слайдах супер-странные, мало к жизни относящиеся)

マイク
24.10.2016
12:00:54
Что за преза?
Автор не смог в ко-/контр-/ин-варианты

Nikita
24.10.2016
12:19:32
автор не смог разобраться вообще) кароч как обычно)

Google

Nikita
24.10.2016
12:19:56
у TS и flow есть прям куча минусов и плюсов. он выбрал какую-то хреноту)

マイク
24.10.2016
12:20:13
Дак зачем разбираться

Admin
ERROR: S client not available

マイク
24.10.2016
12:20:20
Лучше написать пост на медиуме

Nikita
24.10.2016
12:20:34
это не модно. митапы наше все же

Pavel
24.10.2016
12:53:36
А что плохого в презентации? Мне нравится а наверное не должно.

マイク
24.10.2016
13:52:15
* этих презентациях анимацию отключаются вообще?

Nikita
24.10.2016
13:54:09

Aleh
24.10.2016
14:12:39
хз, примеры как примеры и презентация как презентация. Я только вывод не понял
около некоторых примеров из-за недосказанности непонятно плюс такое поведение или минус

Nikita
24.10.2016
14:23:21
во-во))

Aleh
25.10.2016
08:42:02
ну бля https://twitter.com/DJCordhose/status/790196682097102848
еще бы шрифты на лого сравнивали

Андрей
25.10.2016
08:58:57
да ладно уж. я вот оттуда узнал, что во флоу никакого синт сахара нет и быть не может (типа сокращенного синтаксиса инициализации полей из конструктора). печаль, даже в 7 шарпе это вроде скорее всего появится. для меня как человека из мира C# появление flow вызывает недоумение) "NIH" пора переименовывать в NIF (Not Invented in Facebook :) )

Vladimir
25.10.2016
09:01:31
Во flow все это в общем то есть

Ҫѐҏӗѫӑ
25.10.2016
09:04:02
в бабеле?

Vladimir
25.10.2016
09:04:18
Да

Андрей
25.10.2016
10:41:38
то есть, существует некий модуль, встраиваемый в процесс трансляции бабеля, и осуществляющий преобразование js-кода неясного статуса constructor(private someService: IService) в к-р с параметром и инициализацию свойства?

Vladimir
25.10.2016
10:43:25
Есть реализация пропозола для инициализаторов свойств в Ecmascript

Google

Vladimir
25.10.2016
10:43:51
А вот это вот из тайпскрипта - это ерунда какая-то

Yuri
25.10.2016
10:56:36
^this

Андрей
25.10.2016
11:09:16
ну то есть нету) а все, что уменьшает повторы в коде, не уменьшая ценность, есть хорошо. этот синтаксис, что выше, более DRY, чем если отдельно декларировать поля в классе, отдельно параметры, и отдельно инициализацию одного в другое.

Nikita
25.10.2016
11:12:10
99% кода на js - это вообще не конструкторы классов. это вам не C#, тут есть функции)

Vladimir
25.10.2016
11:13:21
> Андрей
все, что уменьшает повторы в коде, не уменьшая ценность, есть хорошо
Нет, не все
Вот как в скале сделано - это нормально

Андрей
25.10.2016
11:15:52

Vladimir
25.10.2016
11:17:01
Нет, здесь взяли существующую конструкцию, внесли в нее дополнительное ключове слово, которое кардинально меняет поведение
Происходит присваивание, но в коде нет присваивания
В скале есть явная инициализация

Андрей
25.10.2016
11:17:56
scala class Person(name: String, age: Int) то же самое - происходит присваивание, но в коде его нет