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

POP-lang — воображаемый функциональный язык, основанный на Dependency injection

Время на прочтение7 мин
Количество просмотров1.6K
Всего голосов 4: ↑4 и ↓0+4
Комментарии3

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

Каждая функция, таким образом, возвращает 2 значения - своё и аргумент, который нужно передать в следующую функцию (контекст).

Не хочу особенно на этом останавливаться - просто поверьте

Такие трюки превращают любую идею в "ах если бы мечта сбылась"

Попахивает велосипедом... Автор спрашивал мнение пользователей других языков:

  1. оператор pop реализован в Rust макросом ?. Для его использования достаточно, чтобы выражение возвращало Result<T, E> или Option<T>. Конечно нужно контролировать тип ошибки.

  2. мечта о произвольном pattern matching реализована, например, в FSharp, как Active Patterns - любая функция, принимающая на вход сопоставляемое выражение и возвращающая Option<T> - матчер сопоставляемого выражения с T.

  3. Pattern Dependency Injection реализуется в ФП с поимощью монады Reader. Собственно монада и предполагает некоторый контекст над типом, так что и мысль о таскаемом за собой контексте что то очень напоминает монаду State.

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

Публикации

Истории