169 похожих чатов

Это гранин придумал, или про это можно бесплатно пейпер почитать?

8 ответов

17 просмотров

Наоборот. Надо почитать пейпер effects a la carte, и НЕ делать как там написано

Alexander Vershilov
Почему?

Ну в пейпере предлагается автоматизировать это всё, чтобы получались тайплевельные списки из функторов. Гранин же настаивает на том, что автоматизация не нужна и всё портит, т. е. надо всё то же самое делать аккуратно вручную

Ilya-Kos Автор вопроса
Kirill Valyavin
Ну в пейпере предлагается автоматизировать это всё...

ну тайплевелные списки это же типичная реализация фримонадных алгебраических эффектов?

Alexander Vershilov
Чем это плохо?

Я не говорю, что плохо. Самоистязание может быть полезным

Kirill Valyavin
Я не говорю, что плохо. Самоистязание может быть п...

Ты говоришь а. "не делать так", б. про самоистязание

Ilya Kos
ну тайплевелные списки это же типичная реализация ...

Не то чтобы типичная, это как бы само собой разумеется, потому что так удобнее. Но Гранин настаивает, что так не надо

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта