The Nix expression language is challenging to evaluate due to non-strict semantics, dynamic scoping, a diverse collection of builtin operators, and tight integration with the Nix store. We give a progress report on Regiux, an interpreter for Nix which is narrowly focused on efficient evaluation of expressions.
Regiux is yet another attempt at a fast Nix evaluator. Come learn about the ingredients that go into modern compilers and interpreters, particularly:
* Lexing and parsing
* Desugaring and expanding
* Intermediate languages for lambda calculus
* Using the RPython JIT toolkit
* Bytecode for lazy graph evaluation
Licensed to the public under http://creativecommons.org/licenses/by/4.0