This will simply print "Hello, " followed by the first argument from the
commandline.
Every Haskell program needs to have a main "action" in the Main module.
This is the entry point.
Files starting with `module <Foo>` will be part of the `Foo` module.
By convention modules are capitalized and definitions aren't.
`import System.Environment` provides `getArgs` to access cli arguments.
Haskell is strongly typed and types may be assigned with `::`. In this case
`main` is of type `IO ()` which is an IO action holding no information.
(more on that later hopefully, as I don't fully understand that.)
module Main where
-
-import Lib
+import System.Environment
main :: IO ()
-main = someFunc
+main = do
+ args <- getArgs
+ putStrLn ("Hello, " ++ args !! 0)