@frp_ru

Страница 402 из 420
Andrey
16.02.2018
14:15:37
лан, функцаны я вас не понимаю ) Вроде про жыэсы говорим а вы какието корутины донатации , let foo = do... Пока.

Google
Andrey
16.02.2018
14:16:36
https://i.imgur.com/8Q0oxfh.png

let foo = do { a ? 2 : 3 } while( Math.random() > .5 ) так тоже не работает

куратины это чтото из сишарпов и руби ?

andretshurotshka?❄️кде
16.02.2018
14:17:36
че происходит

kana
16.02.2018
14:17:46
https://github.com/tc39/proposal-do-expressions

kana
16.02.2018
14:18:06
@iyntx

adam
16.02.2018
14:18:06
куратины это чтото из сишарпов и руби ?
Мне кажется, что тебе стоит отойти от клавиатуры и собраться с мыслями

Дмитрий
16.02.2018
14:18:48
?

? animufag ?
16.02.2018
14:20:44
?
вот хз

смешной реплай

Google
? animufag ?
16.02.2018
14:21:04
хз что смешного

риал штука из шарпов

illiatshurotshka❄️
16.02.2018
14:21:21
Сергей
16.02.2018
14:21:23


illiatshurotshka❄️
16.02.2018
14:22:19
риал штука из шарпов
не оттуда пошла

? animufag ?
16.02.2018
14:24:30
ну да

ну оно ещё на всяких алголах было

и что

блин там же функции наверное называли рутинами

интересно есть ли тут дуальность

kana
16.02.2018
14:27:03
на хаскеле source$ :: StreamT IO a -- first target$ = (f <$> source$) >>= g -- second target$ = do x <- source$ let y = f x g y -- and let make it pure data CmdF a x = G a x type Cmd a = Free (CmdF a) g = liftF . G source$ :: StreamT Cmd a -- first target$ = (f <$> source$) >>= g -- second target$ = do x <- source$ let y = f x g y -- interpret runCmd :: Cmd a -> IO a runCmd = foldF $ --- (G a) -> gFromIO a

а какой там апи у саг я вообще хз, я говорю лишь за идею а идея там в - do-нотация для стрима (удобно и полезно) - вынесение сайд-эффектов в интерпретатор (но профита тут от этого куда маньше чем в хаскеле, потому что интерпретатор захардкорен) (куда менее удобно и полезно в жс) в хаскеле фри сделан через спископодобную структуру (Free - обобщение списка), в жс генераторы аналогично

@ZeroBias я смог донести свою мысль? Это очередной шаг в нашем старом споре

Дмитрий
16.02.2018
14:36:42
Да

Я уже говорил, идея нормальная, но yield в 2018 вымораживает)

Сейчас запилю тебе maybe с do)

kana
16.02.2018
14:37:48
я вроде как-то находил бабель плагин для fantasy-land-монад

Дмитрий
16.02.2018
14:38:25
Не, без плагинов, так do нотацию людям не продать ?

Google
Дмитрий
16.02.2018
14:38:25
Через await

kana
16.02.2018
14:40:19
https://github.com/five-eleven/monadic

какие попытки я принимал для await для других монад - я временно переопределял Promise для кейсов, когда он свой - это не работало с async/await рассахариванием в генераторы, поэтому я брал друго плагин, который расскахаривает async/await в цепочку then - работало криво и с плагином, поэтому была попытка все заварачивать в Promise, результат не помню



о нашел







это было почти год назад

? animufag ?
16.02.2018
16:00:08
?

andretshurotshka?❄️кде
16.02.2018
16:00:26
await?
while (true) { const next = await stream$ }

ток это уже pull

Kelin
16.02.2018
16:05:36
О, кто-то тоже на Dracula сидит

kana
16.02.2018
16:05:51
нет, это скрин с репла рамды

Kelin
16.02.2018
16:06:22
Ну ладно

kana
16.02.2018
16:11:36


10 минут пытался найти баг в коде на пурсе



только сейчас понял что дело в .

в пурсе же «<

Google
Denis
16.02.2018
16:13:30
аахах) я тоже обжигался

Vasiliy
16.02.2018
16:13:33
хах, да, бывает, я наоборот стрелочки эти в хацкеле пишу теперь

Vasiliy
16.02.2018
16:13:58
-- | Right-to-left composition (<<<) :: Category cat => cat b c -> cat a b -> cat a c (<<<) = (.) -- | Left-to-right composition (>>>) :: Category cat => cat a b -> cat b c -> cat a c f >>> g = g . f

ну да

я упоролся по юникод-символам и постоянно подключаю везде - base-unicode-symbols - containers-unicode-symbols нравится а, блин, сорри, это не джиес

kana
16.02.2018
16:25:16
но я же не говорил про стримы или вообще про фронт вот я на бэкенде делаю запрос в базу, получаю Maybe<User>, не более

Дмитрий
16.02.2018
16:25:31
А где я говорю про стримы?

> вот я на бэкенде делаю запрос в базу, получаю Maybe<User>, не более У нас бэкенд так теперь и на фронт шлёт ?

kana
16.02.2018
16:27:12
ну это у вас

Дмитрий
16.02.2018
16:27:18
?‍♂️

kana
16.02.2018
16:27:35
мой вопрос был простой - есть монада Maybe обычная, можно ли с ней работать через await

Дмитрий
16.02.2018
16:30:22
Мой ответ простой — посмотри в файл logic.js и попытайся не думать о ̶б̶е̶л̶о̶й̶ ̶о̶б̶е̶з̶ь̶я̶н̶е̶ стримах

Особеннно если их там нет

Я специально унёс всю хурму аж в отдельную папку чтобы не на что было отвлекаться

Более того, если что то этот подход — с бэкенда в первую очередь идёт, это он наоборот во фронте в новинку

Но это так к слову. maybe через await непосредственно внутри функций watch



Google
Сергей
16.02.2018
16:37:25
Очень странно выглядит

Дмитрий
16.02.2018
16:37:27
По ряду причин объект возращаемый функцией maybe не должен быть thennable, а вот прописать в нём кейсы-фильтры которые бы резолвились только в случае выполнения условий — всегда пожалуйста

Очень странно выглядит
Писать функцию с цсс в бэктиках тоже странно, как и html в джаваскрипте

kana
16.02.2018
16:39:10
Мой ответ простой — посмотри в файл logic.js и попытайся не думать о ̶б̶е̶л̶о̶й̶ ̶о̶б̶е̶з̶ь̶я̶н̶е̶ стримах
окей, тогда кейс просто имею два массива чисел хочу получить сумму возможных голов массива

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

Дмитрий
16.02.2018
16:40:05
Не

Думай

О

Белой

Обезьяне

kana
16.02.2018
16:40:26
так я про стримы ничего и не сказал

Дмитрий
16.02.2018
16:41:31
Ну просто какая разница с помощью чего я набросал интерфейс для примера?)

Задача сводится к траверсу для объектов внутреннего представления

kana
16.02.2018
16:46:29
вот моя конкретная задача и ее конкретное решение



andretshurotshka?❄️кде
16.02.2018
16:48:54
https://github.com/funfix/funland

kana
16.02.2018
16:49:13
https://github.com/funfix/funland
ты это мне или просто? если мне, то к чему это?

andretshurotshka?❄️кде
16.02.2018
16:49:22
просто



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