Prior to this post, searching this site for “Y combinator” turned up nothing. The search engine was innocent: no post had ever covered it, despite the fact that the repos have carried working fixed-point combinators…
Newer APLs support lazy evaluation. My eager language has a workaround for this. The Z combinator is the standard strict-language fix: wrap the self-application in one extra function layer (λv. x x v), so the recursion is a value (a delayed call) rather than an executing expression. sw-MLPL expresses that delay as a named partial — z_step/z_recur/applicative_sage — because the language has no anonymous lambdas.
Z has no Smullyan name (and no zebra in the aviary, despite the letter). The book predates and ignores the strictness problem, so it has no applicative-order variant. "Z combinator" is programmer folklore for the eta-expanded Y
0 comments
No comments yet.
Related stories
- Hacker News · 2 points · 5 days ago
- Hacker News · 1 points · 11 days ago
- Show HN: Karpathy's microgpt in Rust and an array languagesoftwarewrighter.github.ioHacker News · 1 points · 7 days ago
- Hacker News · 1 points · 10 days ago
- Qwen Bookqianwenai.comHacker News · 1 points · 9 days ago
- Hacker News · 1 points · 10 days ago