diff --git a/.gitignore b/.gitignore index 7aa52b3..273ad14 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .NixRoot* +build/ diff --git a/haskell/Hello.hs b/haskell/Hello.hs new file mode 100644 index 0000000..1421882 --- /dev/null +++ b/haskell/Hello.hs @@ -0,0 +1,3 @@ +main = do + putStrLn "Hello, everybody!" + putStrLn ("Please look at my favorite odd numbers: " ++ show (filter odd [10..20])) diff --git a/haskell/Makefile b/haskell/Makefile new file mode 100644 index 0000000..d10b943 --- /dev/null +++ b/haskell/Makefile @@ -0,0 +1,19 @@ +main = "Hello.hs" +build = "build" +elf = "$(build)/elf" + +.PHONY: all +all: clean build run + +.PHONY: clean +clean: + @rm -rf $(build) + +.PHONY: build +build: + @mkdir $(build) &> /dev/null; \ + ghc -outputdir $(build) -o $(elf) $(main) + +.PHONY: run +run: + @./$(elf) diff --git a/haskell/flake.lock b/haskell/flake.lock new file mode 100644 index 0000000..f3e8c2b --- /dev/null +++ b/haskell/flake.lock @@ -0,0 +1,27 @@ +{ + "nodes": { + "nixpkgs": { + "locked": { + "lastModified": 1709961763, + "narHash": "sha256-6H95HGJHhEZtyYA3rIQpvamMKAGoa8Yh2rFV29QnuGw=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "3030f185ba6a4bf4f18b87f345f104e6a6961f34", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "nixpkgs": "nixpkgs" + } + } + }, + "root": "root", + "version": 7 +}