Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add section Nix Interpreters #133

Closed
wants to merge 1 commit into from
Closed

Conversation

milahu
Copy link
Contributor

@milahu milahu commented Sep 14, 2022

No description provided.

@cyntheticfox
Copy link
Member

Both of the added projects look promising, but neither look mature enough atm to be actively used yet, with the JS implementation being too new. If development on them continues and they're increasingly adopted, I'd be comfortable adding them later on.

@milahu
Copy link
Contributor Author

milahu commented Oct 10, 2022

to continue ...

added "status" = how much of "the perfect nix" is implemented

Nix Interpreters

aka: Nix Evaluators

  • nix - the original nix interpreter in C++. aka nix.cc. Status: 90%
  • tour of nix - nix interpreter in javascript. aka nix.js.
    the original nix interpreter, compiled to asm.js. Status: nix-instantiate
  • hnix - nix interpreter in haskell. aka nix.hs. Status: 50%
  • rnix-lsp - nix interpreter in rust. error-tolerant interpreter for intellisense. based on the rnix-parser. aka nix.rs. Status: 20%
  • Toros - Nix implementation in Rust. Based on the NixEL parser. aka nix.rs. Status: 10%
  • nix-eval-js - Nix interpreter in pure JavaScript. Proof of concept. Based on the lezer-parser-nix parser. aka nix.js. Status: 5%

in a distant future, nickel can interpret nix tweag/nickel#93

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants