Size: a a a

PureScript — русскоговорящее сообщество

2018 November 29

p

parket in PureScript — русскоговорящее сообщество
Не понима почему, просто чуть сократил
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
Я тоже не понимаю. Видно в линзах собака порылась
источник

p

parket in PureScript — русскоговорящее сообщество
module Main where
import Prelude

import Effect (Effect)
import Data.Lens as L

bar :: forall a. a -> ( L.Lens' a Int ) -> Unit
bar u l = unit

baz :: ( L.Lens' Int Int ) -> Unit
baz = bar 10

main :: Effect Unit
main = pure unit
источник

p

parket in PureScript — русскоговорящее сообщество
Вот ещё меньше пример. Да, точно в линзах
источник

p

parket in PureScript — русскоговорящее сообщество
Но я плохо понимаю профункторную оптику.
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
Может с предыдущей версией линз попробовать? Я сейчас не могу.
источник

p

parket in PureScript — русскоговорящее сообщество
Я тоже не особо могу. У меня работа подгорает. 😐
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
А как тебе сама идея?
источник

p

parket in PureScript — русскоговорящее сообщество
Я не очень понимаю зачем в месседжах пробрасывать updater.
Кажется, что это плохая идея. Но это не точно.
источник

ЗП

Зигохистоморфный Препроморфизм in PureScript — русскоговорящее сообщество
кхм, эта экспансия (в строгих языках иногда желательно указывать все аргументы)
baz :: Lens' Int Int -> Int -> Unit
baz l n = bar foo l n
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
Идея в том чтобы если у тебя компоненты которым нужен локальный стейт, то хотелось бы не писать кучу бойлерплейта, а передавать линзу (и конструктор мессаджа для гибкости). Те получаем почти локальный стейт
источник

p

parket in PureScript — русскоговорящее сообщество
Зигохистоморфный Препроморфизм
кхм, эта экспансия (в строгих языках иногда желательно указывать все аргументы)
baz :: Lens' Int Int -> Int -> Unit
baz l n = bar foo l n
Не понял.
источник

ЗП

Зигохистоморфный Препроморфизм in PureScript — русскоговорящее сообщество
parket
Не понял.
почитай что такое eta expansion
источник

ЗП

Зигохистоморфный Препроморфизм in PureScript — русскоговорящее сообщество
ну или эта конверсия
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
Зигохистоморфный Препроморфизм
кхм, эта экспансия (в строгих языках иногда желательно указывать все аргументы)
baz :: Lens' Int Int -> Int -> Unit
baz l n = bar foo l n
Нужна полиморфность
источник

p

parket in PureScript — русскоговорящее сообщество
Зигохистоморфный Препроморфизм
почитай что такое eta expansion
👍
источник

ЗП

Зигохистоморфный Препроморфизм in PureScript — русскоговорящее сообщество
eahqzsr
Нужна полиморфность
там все ок, просто у пурсы да как и у жс (ибо строго) надо применять эта экспансию
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
Ааа
источник

ЗП

Зигохистоморфный Препроморфизм in PureScript — русскоговорящее сообщество
для пример
var fix = f => x => f(fix(f))(x)

var fix1 = f => f(fix1(f))

второй взорвется при использовании
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
Понял, спасибо, работает
источник