Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 fetchFromGitHub, 4 ocamlPackages, 5}: 6 7let 8 inherit (ocamlPackages) buildDunePackage js_of_ocaml menhir; 9in 10 11buildDunePackage rec { 12 pname = "eff"; 13 version = "5.1"; 14 15 src = fetchFromGitHub { 16 owner = "matijapretnar"; 17 repo = "eff"; 18 rev = "v${version}"; 19 hash = "sha256-0U61y41CA0YaoNk9Hsj7j6eb2V6Ku3MAjW9lMEimiC0="; 20 }; 21 22 nativeBuildInputs = [ menhir ]; 23 24 buildInputs = [ js_of_ocaml ]; 25 26 doCheck = true; 27 28 meta = with lib; { 29 homepage = "https://www.eff-lang.org"; 30 description = "Functional programming language based on algebraic effects and their handlers"; 31 mainProgram = "eff"; 32 longDescription = '' 33 Eff is a functional language with handlers of not only exceptions, 34 but also of other computational effects such as state or I/O. With 35 handlers, you can simply implement transactions, redirections, 36 backtracking, multi-threading, and much more... 37 ''; 38 license = licenses.bsd2; 39 maintainers = [ maintainers.jirkamarsik ]; 40 }; 41}