Size: a a a

2021 March 21

к

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

ЗП

Зигохистоморфный Пре... in Haskell
кана
он не такой страшный как кажется по доке, а кучу вещей позволит заметно проще написать чем на генериках
а если generic sop?
источник

к

кана in Haskell
ну я про него и говорю
источник

к

кана in Haskell
"на generic-sop вещи можно написать заметно проще чем на генериках"
источник

ЗП

Зигохистоморфный Пре... in Haskell
кана
"на generic-sop вещи можно написать заметно проще чем на генериках"
ты делал через него deriving via?
источник

к

кана in Haskell
да, писал генератор энкодеров/декодеров жсона и еще одной структуры обобщенной
источник

ЗП

Зигохистоморфный Пре... in Haskell
кана
да, писал генератор энкодеров/декодеров жсона и еще одной структуры обобщенной
можно пример?
источник

[

[BRM]White Rabbit in Haskell
А я поспорил, что прочту Курта до конца (осталось 340 страниц) за неделю, F мне
источник

OS

Oleksandr Shyshko in Haskell
как указать компилятору, что _ одного типа?
```
f :: forall m s k v. (MArray s v m) => m v
f = undefined

g :: IO Bool
g = f @IO @IOUArray @Int @Bool

h :: ST s Bool
h = f @(ST _) @(STUArray _) @Int @Bool

• Ambiguous type variable ‘_0’ arising from a use of ‘f’
     prevents the constraint ‘(MArray
                                 (STUArray _0) Bool (ST s))’ from being solved.
     Relevant bindings include
       h :: ST s Bool (bound at src/Y15/D06.hs:263:1)
     Probable fix: use a type annotation to specify what ‘_0’ should be.
     These potential instance exist:
       instance MArray (STUArray s) Bool (ST s)
         -- Defined in ‘Data.Array.Base’
   • In the expression: f @(ST _) @(STUArray _) @Int @Bool
     In an equation for ‘h’: h = f @(ST _) @(STUArray _) @Int @Bool
   |
263 | h = f @(ST _) @(STUArray _) @Int @Bool
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

```
источник

a

adam in Haskell
Oleksandr Shyshko
как указать компилятору, что _ одного типа?
```
f :: forall m s k v. (MArray s v m) => m v
f = undefined

g :: IO Bool
g = f @IO @IOUArray @Int @Bool

h :: ST s Bool
h = f @(ST _) @(STUArray _) @Int @Bool

• Ambiguous type variable ‘_0’ arising from a use of ‘f’
     prevents the constraint ‘(MArray
                                 (STUArray _0) Bool (ST s))’ from being solved.
     Relevant bindings include
       h :: ST s Bool (bound at src/Y15/D06.hs:263:1)
     Probable fix: use a type annotation to specify what ‘_0’ should be.
     These potential instance exist:
       instance MArray (STUArray s) Bool (ST s)
         -- Defined in ‘Data.Array.Base’
   • In the expression: f @(ST _) @(STUArray _) @Int @Bool
     In an equation for ‘h’: h = f @(ST _) @(STUArray _) @Int @Bool
   |
263 | h = f @(ST _) @(STUArray _) @Int @Bool
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

```
к примеру его назвать
источник

OS

Oleksandr Shyshko in Haskell
adam
к примеру его назвать
добавление forall в тип h решило проблему:

h :: forall s . ST s Bool
h = f @(ST s) @(STUArray s) @Int @Bool
источник

OS

Oleksandr Shyshko in Haskell
а есть ли способ укзать это в одной строке?

h = f @(ST ?) @(STUArray ?) @Int @Bool
источник

JS

Jerzy Syrowiecki in Haskell
Oleksandr Shyshko
а есть ли способ укзать это в одной строке?

h = f @(ST ?) @(STUArray ?) @Int @Bool
выше подсказали именованую дырку: _a
источник

к

кана in Haskell
а это разве дырка?
источник

[

[BRM]White Rabbit in Haskell
Ghc пишет шо да
источник

[

[BRM]White Rabbit in Haskell
Мне кажется, ему можно верить
источник

AA

A64m AL256m qn<co... in Haskell
есть два вида дырок
источник

t

toriningen in Haskell
начало звучит интригующе ( ͡° ͜ʖ ͡°)
источник

[

[BRM]White Rabbit in Haskell
A64m AL256m qn I0
есть два вида дырок
Именованные и неименованные?
источник

AA

A64m AL256m qn<co... in Haskell
в типах и термах
источник