3 ms·
Show HN: Programming with Pure Lambda Calculus
- fallat 3y agoI await the day an efficient lambda calculus reducer is laid upon us. Essentially it'd be massively parallel.
- marvinborner 3y agoIf you haven't done so already, you might want to look at interaction nets and HVM. Although HVM does not (yet!) support full lambda calculus. I'm currently exploring another approach to a massively parallel reducer for pure lambda calculus. Efficient sharing of lambda graphs is one of the main problems for me.
- tt567x 3y agoNeat!
- BoiledCabbage 3y agoThat is really cool. Lambdas all the way down. The encoding of binary and ternary was interesting (following from the link at the bottom of the page). It does make me curious why ternary was chosen as the default.
- marvinborner 3y agoHi, thanks! Balanced ternary was chosen as the default base because an investigation by Torben Mogensen[1] showed that it's a good compromise in terms of space and time complexity. Higher bases can be even more compact and efficient, but require much larger implementations for arithmetic operations. Balanced ternary also supports negative numbers, which unary (Church) or binary (Mogensen) don't. [1]: https://doi.org/10.1007/3-540-45575-2_20 https://doi.org/10.1007/3-540-45575-2_20
- thdespou 3y agoOK but why? Is this for fun or profit?
- marvinborner 3y agoThere's a dedicated section titled "Why?" on the linked website. To summarize: Just for fun, not for profit.
- jay-barronville 3y agoBased. Upvoted.