@frp_ru

Страница 319 из 420
Дмитрий
12.12.2017
02:31:36
Вот как пример глобальный в рамках проекта newtype https://github.com/zerobias/telegram-mtproto/blob/feature/mtproto3/packages/telegram-mtproto/src/newtype.h.js

Ввиду чего я работаю не с number[] number[], а вижу что одно это CryptoKey (который по прежнему и для нас и для флоу остаётся массивом чисел, а второе — это список уникальных айдишников UID[]

CryptoKey UID[] vs number[] number[]

Maxim
12.12.2017
02:35:57
Opaque типы конечно фича

Google
Maxim
12.12.2017
02:36:30
А вот то, что у тебя на ноуте 4 флоу не тормозят - подозрительно)

andretshurotshka?❄️кде
12.12.2017
02:37:05
Втф тут было

Дмитрий
12.12.2017
02:37:07
Просто я разобрался в причине и решил проблему общим образом

Denis
12.12.2017
02:37:08
на моем маке тоже много чего не тормозит

kana
12.12.2017
02:37:08
так я говорю, может он использует флоу-демон, который работает в фоне

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

Maxim
12.12.2017
02:37:38
Может я его не правильно готовлю, пока не готов принять флоу со всеми его детскими болезнями

Дмитрий
12.12.2017
02:37:53
Ты думаешь в вс коде он не перезапускается?)

Я просто решил его не спрашивать

Denis
12.12.2017
02:39:08
5 intellij idea, 2 виртуалки, 8 докеров, 100500 вкладок

Дмитрий
12.12.2017
02:39:35
У меня не особо мощный ноут, к слову

Maxim
12.12.2017
02:39:43
Я просто решил его не спрашивать
Ну всё, погнали железяками меряться)

Google
Дмитрий
12.12.2017
02:40:09
Ну всё, погнали железяками меряться)
Тебя куда то не туда понесло, это то тут при чём?

Maxim
12.12.2017
02:40:46
Не на то ответил

Дмитрий
12.12.2017
02:40:52
Ну лан)

Maxim
12.12.2017
02:41:13
Дмитрий
12.12.2017
02:42:53
Закрыл редактор и вписал в package.json "flow": "pm2 start flow"

После чего любые поползновения редакторов пресекаются на корню, я даже не впоминаю об этом

А сервер, запущенный (или моментально перезапущеный, как это делает pm2) нормальным образом будет работать нормально и без проблем

Редакторы просто вынуждены работать с инстансом, который запустили не они

Maxim
12.12.2017
02:45:47
Гм.. зачем то же они запускают разные

Alice
12.12.2017
02:45:50
Рак свистнул, джет брейнс дружит с флоу ? На днях испытал кучу боли
Ну да. Если отключить встроенную поддержку флоу и оставить только эслинт.

Дмитрий
12.12.2017
02:46:13
Гм.. зачем то же они запускают разные
Ты пытаешься найти причину, я же показываю выход))

Maxim
12.12.2017
02:46:32
Еслинт - это 1/100 того чего мне надо

Дмитрий
12.12.2017
02:46:46
Да, по ряду причин редакторы запускают сервер криво. Просто не давайте редакторам запускать сервер)

andretshurotshka?❄️кде
12.12.2017
02:47:50
Alice
12.12.2017
02:49:18
http://telegra.ph/Pravila-FRP-chata-12-11
Напомнило правила аниме-клуба из моего универа. Хотя там ещё больше рака было.

Ой, не правила.

УСТАВ.

Там это называлось УСТАВОМ.

Denis
12.12.2017
02:59:08
https://www.youtube.com/watch?v=B0i5w94_430

Google
kana
12.12.2017
03:03:56


andretshurotshka?❄️кде
12.12.2017
03:05:32
фига я проспал срач

>политика запрещена ?

Дмитрий
12.12.2017
03:10:58
Называть друг друга мудаками — не политика ?

https://github.com/andywer/gear Опа

andretshurotshka?❄️кде
12.12.2017
03:12:42
/stat@combot

Combot
12.12.2017
03:12:42
combot.org/chat/-1001071213089

andretshurotshka?❄️кде
12.12.2017
03:13:02
>37%

Denis
12.12.2017
03:33:39
effin не зашел?)

kana
12.12.2017
03:34:00
не, я еще не пробовал, я просто открыл vscode а там это

и я продолжил реализовывать разные эффекты

сейчас механизм эксепшенов допишу и посмотрю effin

andretshurotshka?❄️кде
12.12.2017
03:35:42
https://twitter.com/YuriyBogomolov/status/940239567764017152

https://mobile.twitter.com/YuriyBogomolov/status/940232525821218816 топ



kana
12.12.2017
03:42:09
выкладывай gists)
да там ничего нового, если читал сорцы freer - https://gist.github.com/kana-sama/32614510e20e82e65c6732a8bc11f317#file-my-freer-without-optimisations-reader-state-writer-exception-hs-L150-L171

простенький exception с кетчингом ошибок

ну и пример использования - https://gist.github.com/kana-sama/32614510e20e82e65c6732a8bc11f317#file-my-freer-without-optimisations-reader-state-writer-exception-hs-L191-L213



Google
kana
12.12.2017
03:44:23
добавить эксепшены в хаскель - 10 строчек

добавить эксепшены в го - невозможно

andretshurotshka?❄️кде
12.12.2017
03:45:26
kana
12.12.2017
03:46:55
только не мог придумать нормальный синтаксис для try

если введут no-dollar-do, то можно будет так



Admin
ERROR: S client not available

andretshurotshka?❄️кде
12.12.2017
03:50:26
фп нужен для императивщины?)

kana
12.12.2017
03:50:30
да

не, не так фп нужен, чтобы ввести императивщину

типа во всех языках есть if, а в языке L его нет, но мы его напишем в виде функции и будем юзать, вот наш if

нужно не забывать еще такие приколюхи, что запускать эффекты можно локально, не обязательно это делать в main



Дмитрий
12.12.2017
03:58:56
Хэндлер эффектов

kana
12.12.2017
04:07:49
ну все, пейпер freer прочитан, код тоже

adam
12.12.2017
04:08:00
прикольно

Denis
12.12.2017
04:11:29
мда) https://www.humblespark.com/blog/extensible-effects-in-node-part-1

@kana_sama кстати тут есть немного интересного https://github.com/srijs/haskell-free-concurrent/blob/1a56280e8d63e037cf8f9e57aa17ac6a8ac817a5/src/Control/Concurrent/Free.hs#L29-L33

Даниил
12.12.2017
05:17:28
зачем эти ваши хаскели если всё уже есть в жс

Google
andretshurotshka?❄️кде
12.12.2017
05:39:56
лол

Gleb
12.12.2017
06:17:58
Решили epics еще подсократить export const fetchSomeEpic = request({url: "/abcd"}, successActionCreator, failActionCreator/*опционально*/, cancelableActionCreator/*опционально*/) Fail вообще не обрабатываются особенным образом они выше в рутовых эпиках Ну и жирный request в котором идет и запрос и обработки какие то стандартные .takeUntil(action$.ofActionCreator(cancelableActionCreator)) .retryWhen(tokenExpired)

надо нет оно вообще вот так делать ?

andretshurotshka?❄️кде
12.12.2017
06:40:50
что ты делаешь?

Gleb
12.12.2017
06:41:31
?

Цель - вообще отсутсвие дублирования за счет хайордер обзервабла то есть по сути все эпики с простыми запросами имеют почти одинаковую структуру .flatMap() .takeUntil .map() Что если вынести это вообще отдельно в функцию и просто передать туда ActionCreator для success и fail export const request = curry((httpConf, success, fail, cancel, action$, store, ) =>)

Плюс внутри request там mergeMap с success и например globalSuccess в конце, те какие то специфические экшны вернуть

Gleb
12.12.2017
07:04:30
Угу lettable прикольня штука!)я в них как раз прокинул свою функцию поверх redux-act чтобы работать сохраняя тайпинги export function ofAction <P,M>(actionCreator: ActionCreator<P, M>) { return function ofActionOperatorFunction(source: ActionsObservable) { return source.ofType(actionCreator.getType()) as Observable<ActionCreator<P, M>> }; } То есть выглядеть должно как то так? pipe( ofAction(anyActionCreator), request(successActionCreator, failActionCreator) )

Denis
12.12.2017
07:06:10
типа того

но вообще если нужно шарить эффект то лучше через publish с селектором

Gleb
12.12.2017
07:09:35
Да его как раз нужно шарить. То есть еще чище было бы если бы я писал pipe( ofAction(anyActionCreator), request({url: "/any"}), map(uccessActionCreator,) ) И при том реквест например бы возвращал мне данные но и при этом паблишил global success

adam
12.12.2017
07:09:36
https://mobile.twitter.com/YuriyBogomolov/status/940232525821218816 топ
А ведь и правда, он со своим аутизмом приходит к выводу, что нужно писать на фп.

Gleb
12.12.2017
07:10:12
Как тогда должен выглдять request c publish/share можно пример пожалуйтса

Denis
12.12.2017
07:10:40
o.publish(s => shareYourEffect)

Страница 319 из 420