eba2182151058b920fa3aee857345d322f42cd38
Introduce pkg/expr.Expression as a base interface for all evaluatable expression types, enabling future support for multiple evaluation modes (SKI combinators, typed lambda calculus, etc.). - Add pkg/expr/expr.go with Expression interface requiring String() method. - Update lambda.Expression to embed expr.Expression. - Add String() method to Abstraction, Application, and Variable types. - Update plugins to use String() instead of lambda.Stringify().
lambda
Making a lambda calculus interpreter in Go.
Things to talk about
- Exhaustive sum types.
- Recursive descent and left-recursion.
- Observer pattern, event emission.
Links
https://zicklag.katharos.group/blog/interaction-nets-combinators-calculus/ https://arxiv.org/pdf/2505.20314
Languages
Go
96.6%
Makefile
3.4%