hnix/PLAN.org

2.5 KiB

hnix Project Plan

Goals

The purpose of hnix is provide a fully featured, compatible implementation of the Nix language, sufficient to evaluate and make use of the nixpkgs package repository definitions. The intent is to provide a convenient basis for creating new tooling in Haskell for the Nix ecosystem, and to provide an second implementation apart from the current C++ code base used by the Nix project.

What needs to be done

PROJECT Pass the Nix language tests

We currently have just two tests remaining that need to be fixed to pass the Nix language tests:

TODO builtins.genericClosure:

PROJECT Successfully evaluate all of nixpkgs

There are still a few problems in the evaluator with process the contents of the nixpkgs repository:

PROJECT Increase test coverage

PROJECT Improve the hnix REPL

PROJECT Support concurrent evaluation

PROJECT Type checker

PROJECT Haskell integration using a quasi-quoter

Colophon