Size: a a a

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

2018 November 29

ЗП

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

ЗП

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

p

parket in PureScript — русскоговорящее сообщество
bar :: forall a. a -> ( L.Lens' a Int ) -> Int
bar u l = L.view l u

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


Что происходит с вот этим, можешь объяснить, пожалуйста.
источник

ЗП

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

p

parket in PureScript — русскоговорящее сообщество
Т.е. почему мы не можем сократить на l
baz :: ( L.Lens' Int Int ) -> Int
baz l = bar 10 l
источник

p

parket in PureScript — русскоговорящее сообщество
C фиксом понятно. Язык то не ленивый. Тут то чего?
источник

ЗП

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

ЗП

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

ЗП

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

p

parket in PureScript — русскоговорящее сообщество
Пурса не ленивая, это понятно. Почему конкретно этот пример так себя ведёт.
источник

e

eahqzsr in PureScript — русскоговорящее сообщество
Ну вообще эта редукция даёт эквивалентную программу, не?
источник

ЗП

Зигохистоморфный Препроморфизм in PureScript — русскоговорящее сообщество
eahqzsr
Ну вообще эта редукция даёт эквивалентную программу, не?
задача эта экспансии что
\x -> f x
и
f
эквивалентны
источник

ЗП

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

p

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

ЗП

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

p

parket in PureScript — русскоговорящее сообщество
Ну вот же пример.

Давайте разберем.

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

baz0 :: ( L.Lens' Int Int ) -> Int
baz0 l = bar 10 l

baz1 :: ( L.Lens' Int Int ) -> Int
baz1 = bar 10
источник

p

parket in PureScript — русскоговорящее сообщество
Я не вижу разницы.
источник

p

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

ЗП

Зигохистоморфный Препроморфизм in PureScript — русскоговорящее сообщество
тут же в куске типа изолированный forall
потому что у линзы forall p. Strong p => ...
распиши линзу и увидишь, что p живет не в области всего типа
источник

e

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