This git repository contains code presented in a series of articles introducing functional programming via Nix's language:
- On Nix's Language: Introduction;
- On Nix's Language: Recursive Functions;
- On Nix's Language: Closures;
- On Nix's Language: Pragmatism, laziness;
- On Nix's Language: Mathematical Expressions, Brainf*ck;
- On Nix's Language: Lambda Calculus Interpreter.
Note: Some of the code doesn't compile, on purpose (e.g. hw1).
Note: You can run all (automated) tests with make tests
.
Note: lambda/
essentially contains lambda.nix
and
lambda_test.nix
split in multiple files for easier
inclusion in the related article. Furthermore, there's a great
deal of redundancies in lambda_test.nix
.
Note: For more on the automated tests
(ftests.nix
) see this article.