Как стать автором
Обновить

Комментарии 11

Срочно нужно средство, как остановить кровотечение из глаз после увиденного кода...

Очень сложно. И ничего не понятно

Ага, объяснение сложным языком простых вещей...

После фразы:

Здесь и далее для примеров я буду использовать упрощенный функциональный язык

Вы меня потеряли.

Во первых поди разберись в вашем вымышленном языке. А во вторых, почему не JavaScript как написано в заголовке статьи, или тот же Haskell?

ПС: Тема и так сложная, а вы еще и новый язык туда засунули, на добивочку. Дальше не читал.

Все просто. Haskell я не помню так хорошо, чтобы писать на нем, а Javascript не подходит, потому что все это - это пересказ научной статьи, где все примеры на функциональном языке. Статья (оригинальная) и так сложная, чтобы затуманивать ее Javascript, где нет половины фич. Просто попробуйте примеры в конце и если заинтересует почему такой дикий код работает, то почитайте и статью. Псевдо язык - это просто некий ML диалект, все ML языки выглядят более-менее одинаково.

Тут где-то уже бегал чувак с двумя постами про эффекты в JS. Тоже рассказывал о том, как они прекрасны и упрощают(??) код, с подобными вырвыглазыми примерами. Весна что ли

Вообще-то, у статьи тэг ненормальное программирование. А эффекты удивительны, превосходны и прекрасны нереально. Но только там, где они поддерживаются самим языком, конечно. Да и как может быть иначе, если практически все конструкции связанные с control flow в любых языках - это и есть эффекты.

По-моему, когда вы упомянули "Koko (.NET)", вы имели в виду Koka (https://koka-lang.github.io/) - ныне этот язык отвязан от .NET: компилятор порождает бинарный код для разных платформ через промежуточное представление на C.

Ещё один not-invented-here псевдоязык. Зачем? Чтобы кровь из глаз пошла?

Взяли бы синтаксис хаскелла и не мучали бы людей. Или, если на то пошло, взяли бы синтаксис окамла. Вот наверняка же одиночные апострофы - это оттуда прилетело?

В случае Free монады начальными элементами будут, грубо говоря, простые типы, а операциями - рекурсивные типы данных, являющиеся функторами (не будем вдаваться в подробности, поскольку для дальнейшего это не имеет значения). Поскольку функторы обладают приятным свойством ассоциативности (не важны скобки в композиции), то их можно спокойно комбинировать, а значит получать монадические свойства на халяву (free в другом смысле).

Это очень плохая идея - использовать перегруженные термины, да ещё и походя.

В хаскелле функтором называют одно, в камле - другое. Как понять, о чём речь идёт именно здесь? В статье, ясен пень, теоркатовско-хаскелловские...

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации