Size: a a a

2021 April 09

S

Sooqa in Haskell
Выглядит прекрасно
источник

к

кана in Haskell
это сломает почти весь код, который основывается на параметричности
источник

к

кана in Haskell
линзы работают только потому что нельзя предоставить функцию, которая должна знать больше чем требуется
источник

S

Sooqa in Haskell
Ну вот, надо было сразу добавлять фичу
источник

к

кана in Haskell
тогда не было бы линз
источник

S

Sooqa in Haskell
Что это значит
источник

AS

Anton Sorokin in Haskell
Такое даже с undecidable instances не написать, но что в этом хорошего? x ->unsafePerformIO (print "5" » return x) тоже forall a. a -> a
источник

AS

Anton Sorokin in Haskell
То есть функция такого типа точно не единственна
источник

к

кана in Haskell
Lens s a = forall f. Functor f => (a -> f a) -> (s -> f s)

линза является линзной (то есть обязна фокусить ровно в одно значение, ни 0 ни 2) ровно потому что она урезается до любого функтора, и должна работать для любого функтора, а не для конкретного
источник

KV

Kirill Valyavin in Haskell
unsafePerformPatternMatching
источник

к

кана in Haskell
если бы можно было бы сматчить f и узнать что это за функтор, то можно было бы под типом линзы делать траверсал
источник

MK

Maxim Koltsov in Haskell
Ну кстати через reflection-rtti можно и так)
источник

к

кана in Haskell
матчинг по типам добавит какой-то сахар, но уберет очень важное и полезное свойство из языка
источник

к

кана in Haskell
так стоит ли этот сахар того
источник

к

кана in Haskell
а это буквально просто сахар, а не фича
источник

к

кана in Haskell
нет, не прав, просто сахар над Typeable бы не сломал таки, а вот фича сломала бы
источник

a

adam in Haskell
ну ващет в гадтах ты так и делаешь
источник

к

кана in Haskell
нет, в гадтах не так, в гадтах ты хранишь РАНТАЙМ тег и компайлтайм коерс
источник

a

adam in Haskell
ну да, это уже из ряда занудства
источник

S

Sooqa in Haskell
Как это нагуглить?
источник