Size: a a a

2021 May 27

AP

Aleksei (astynax) Pi... in Haskell
Один большой энв и локалы местные обычно. Плюс линзы для добывания подконфигов
источник

[

[BRM]White Rabbit in Haskell
А на сколько сильно каррирование оптимизируется в хаскеле?
Я просто сейчас реализую каррирование на C# и там страх сколько лямбд добавляется
источник

IO

I O in Haskell
Если вызов известной функции, типа

f :: Int -> Int -> Int -> Int
f a b = \c -> a + b + c
{-# NOINLINE f #-}

g :: Int
g = f 1 2 3

то вообще никакого оверхеда - кладем 1, 2, 3 в регистры и goto f.

Если вызов неизвестной, типа

run f a b c = f a b c

есть какой-то оверхед, нужно проверить сколько у f аргументов, если 3 - просто вызвать, если больше - сделать partial application, если меньше - дать сколько надо, потом вызвать результат с оставшимися.

В коре/стг можно явно увидеть сколько у функции будет аргументов, например

run
 :: forall t1 t2 t3 t4.
    (t1 -> t2 -> t3 -> t4) -> t1 -> t2 -> t3 -> t4
[GblId,
Arity=4, <------
Caf=NoCafRefs,
Str=<C(C(C(S))),1*C1(C1(C1(U)))><L,U><L,U><L,U>,
Unf=OtherCon []] =
   \r [f_s2tF a_s2tG b_s2tH c_s2tI] f_s2tF a_s2tG b_s2tH c_s2tI;
источник

JS

Jerzy Syrowiecki in Haskell
можно легко, если отказаться от mtl
источник

[

[BRM]White Rabbit in Haskell
а стоит от него отказываться?
источник

JS

Jerzy Syrowiecki in Haskell
обычно не стоит, asks достаточно
источник

[

[BRM]White Rabbit in Haskell
Кстати, я тут слышал, что есть алгебраические эффекты и что они мощнее монадок. Ещё слышал что фри монады это и есть алгебраические эффекты.
Что из этого правда и что вообще такое эти ваши алгебраические эффекты?
источник

MK

Maxim Koltsov in Haskell
не стоит вскрывать эту тему, вы молодые, шутливые...
источник

JS

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

JS

Jerzy Syrowiecki in Haskell
АЭ могут быть мощее IO, но не монадок
источник

[

[BRM]White Rabbit in Haskell
Это не Чикатило и даже не архивы спецслужб?
источник

JS

Jerzy Syrowiecki in Haskell
есть библиотека freer, которая реализует и монады посвободнее, и одновременно АЭ
источник

IO

I O in Haskell
(и еще сотня разных библиотек и подходов)
источник

v

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

YS

Yurii Stroganov in Haskell
Дело не в важности, а в размере)
источник

N

Nikita Ursol in Haskell
Просто боты хотят чтоб их на хаскеле переписали.
источник

AP

Artem Pelenitsyn in Haskell
Haskell Foundation хочет написать "ещё одно" руководство по Хаскелю:
https://github.com/haskellfoundation/HaskellSchool
Из необычного: предполагается что там будет на многих языках, в том числе на русском, так что если кто хочет поразмяться или просто перенести инфу из https://github.com/ruHaskell/ruhaskell/wiki ...
И ещё: почему-то решили взять в качестве примера Elixir School (whatever that means).
источник

[

[BRM]White Rabbit in Haskell
а они не хотят задонить на "ещё одну" IDE для хаскеля?
источник

D

Denis in Haskell
Извините, а что стало с прошлой IDE?
источник

K

Kir in Haskell
Leksah давно закопали
источник