The basic point is to have something akin to lambda-calculus that can equally account for both strict and lazy evaluation strategies, in a way that doesn't unduly sacrifice expressiveness for one or the other. (Compare the ML family of languages and Haskell, where strict and lazy evaluation respectively are idiomatic. You can express lazy evaluation in a ML and strict evaluation in Haskell, but only in clunky ways that don't align with the overall logic of the language. CBPV and other comparable formalisms aim to resolve this.)
ggm•7mo ago
throwaway81523•7mo ago
https://en.wikipedia.org/wiki/Call-by-push-value
vulcan01•7mo ago
HN discussion: https://news.ycombinator.com/item?id=39653895
tomhow•7mo ago
I'm Betting on Call-by-Push-Value - https://news.ycombinator.com/item?id=39653895 - March 2024 (64 comments)
zozbot234•7mo ago