diff --git a/haskell/Main.hs b/haskell/Main.hs new file mode 100644 index 0000000..65ae4a0 --- /dev/null +++ b/haskell/Main.hs @@ -0,0 +1,4 @@ +module Main where + +main :: IO () +main = putStrLn "Hello, Haskell!" diff --git a/haskell/Setup.hs b/haskell/Setup.hs new file mode 100644 index 0000000..9a994af --- /dev/null +++ b/haskell/Setup.hs @@ -0,0 +1,2 @@ +import Distribution.Simple +main = defaultMain diff --git a/haskell/all_even.hs b/haskell/all_even.hs index e855ecc..d3b98c4 100644 --- a/haskell/all_even.hs +++ b/haskell/all_even.hs @@ -3,9 +3,18 @@ module Main where allEven [] = [] allEven (h:t) = if even h then h:allEven t else allEven t - -- >>> :t allEven - -- allEven :: [Integer] -> [Integer] - -- + allEven2 :: [Integer] -> [Integer] + allEven2 xs = [x | x <- xs, even x] + + allEven3 :: [Integer] -> [Integer] + allEven3 = filter even + + -- >>> allEven [1, 2, 3, 4, 5, 6] + -- [2,4,6] + -- >>> allEven2 [1, 2, 3, 4, 5, 6] + -- [2,4,6] + -- >>> allEven3 [1, 2, 3, 4, 5, 6] + -- [2,4,6] main :: IO() main = diff --git a/haskell/haskell.cabal b/haskell/haskell.cabal new file mode 100644 index 0000000..b1f20fe --- /dev/null +++ b/haskell/haskell.cabal @@ -0,0 +1,24 @@ +cabal-version: >=1.10 +-- Initial package description 'haskell.cabal' generated by 'cabal init'. +-- For further documentation, see http://haskell.org/cabal/users-guide/ + +name: haskell +version: 0.1.0.0 +-- synopsis: +-- description: +-- bug-reports: +-- license: +license-file: LICENSE +author: Jason Staten +maintainer: code@jxs.me +-- copyright: +-- category: +build-type: Simple + +executable haskell + main-is: Main.hs + -- other-modules: + -- other-extensions: + build-depends: base >=4.12 && <4.13 + -- hs-source-dirs: + default-language: Haskell2010 diff --git a/haskell/stack.yaml b/haskell/stack.yaml deleted file mode 100644 index e69de29..0000000