Skip to content

GoDNix

GoDNix is the front end of a Go-based interaction-net stack: it parses Nix expressions and compiles them into Delta Interaction Nets, which GoDNet then reduces.

The first version supports a core fragment of Nix:

  • Integers, Church-numeral encoding
  • Anonymous functions, x: body syntax
  • Function application, direct application of functions to arguments
  • Let bindings, let x = value; in body
  • Addition, pure Church-numeral addition (+)

GoDNix pairs with GoDNet. GoDNix compiles the surface Nix language into interaction nets, and GoDNet performs the optimal reduction. Together they are a research vehicle for evaluating Nix on the same Δ-Nets foundation explored by dnx.

Source Code Support this project