LINUX.ORG.RU

История изменений

Исправление den73, (текущая версия) :

Весь код в любом языке с call/cc является монадическим автоматом (в identity монаде). Без переписывания в do-нотацию, замены аппликаций на бинды и прочую чушь.

Именно по-этому получается в do-нотации записать любую другую монаду - do-нотация внутри cont является таким языком.

Точно так же, как ты в хаскеле превращаешь код внутри do в код любой монады - в языках с call/cc ты можешь делать _с произвольным_ кодом. В любом месте.

Анонимус практически продал мне схему. Поскольку идентичность анонимуса никоггда не ясна, я считаю ответы анонимусов несколько... э... не заслуживающими доверия, даже если они выглядят похожими на правду. Я бы хотел комментариев от зарегистрированных пользователей, знающих Хаскель. Верно ли я понял, что в Хаскеле нельзя так просто взять определённый уже написанный код и как-то по-новому его выполнить (добавить к нему транзакционность, к примеру, или call/cc). Я ищу именно такую возможность (у меня есть конкретная задача для этого).

Исправление den73, :

Весь код в любом языке с call/cc является монадическим автоматом (в identity монаде). Без переписывания в do-нотацию, замены аппликаций на бинды и прочую чушь.

Именно по-этому получается в do-нотации записать любую другую монаду - do-нотация внутри cont является таким языком.

Точно так же, как ты в хаскеле превращаешь код внутри do в код любой монады - в языках с call/cc ты можешь делать _с произвольным_ кодом. В любом месте.

Анонимус практически продал мне схему. Поскольку анонимусы не обязаны писать адекватного текста, я бы хотел комментариев от зарегистрированных пользователей, знающих Хаскель. Верно ли я понял, что в Хаскеле нельзя так просто взять определённый уже написанный код и как-то по-новому его выполнить (добавить к нему транзакционность, к примеру, или call/cc). Я ищу именно такую возможность (у меня есть конкретная задача для этого).

Исходная версия den73, :

Весь код в любом языке с call/cc является монадическим автоматом (в identity монаде). Без переписывания в do-нотацию, замены аппликаций на бинды и прочую чушь.

Именно по-этому получается в do-нотации записать любую другую монаду - do-нотация внутри cont является таким языком.

Точно так же, как ты в хаскеле превращаешь код внутри do в код любой монады - в языках с call/cc ты можешь делать _с произвольным_ кодом. В любом месте.

Анонимус практически продал мне схему. Поскольку анонимусы не обязаны писать адекватного текста и относятся к касте неприкасаемых в связи с этим, то я бы хотел комментариев от зарегистрированных пользователей, знающих Хаскель. Верно ли я понял, что в Хаскеле нельзя так просто взять определённый уже написанный код и как-то по-новому его выполнить (добавить к нему транзакционность, к примеру, или call/cc). Я ищу именно такую возможность (у меня есть конкретная задача для этого).