I\'ve been told you can interpret Haskell files (which I assume means they will work like Ruby/Python/Perl). I can\'t find the command line option on GHC to do this, though.
$ runhaskell MyFile.hs
Alternatively, runghc
(they're the same thing). ghci MyFile.hs
will also start an interactive REPL session with MyFile.hs
loaded, but if you want to run a main program then runhaskell
is the way to go.
It's probably a good idea to get into the habit of testing parts of your program as isolated units in GHCi rather than running the whole thing each time, but obviously for shorter scripts it's simplest and easiest just to run the entire thing.
Open the GHC interpreter by running ghci
in a terminal, and then load a file typing :load example.hs
. More details in this link.
You can have a script like this:
#!/usr/bin/env runhaskell
main = putStrLn "hello world"
After making the file executable (ie chmod +x haskell_script
), you can run it like any other shell script.
To run the code written in a file, say myfile.txt
, containing simple lines of code which work in the GHC interpreter, like:
let a = 0 in a:[1,2]
let x = [1,2] in x ++ [3,4]
you can do:
ghc -e ':script myfile.txt'
On Windows, double quotes are required:
ghc -e ":script myfile.txt"
Instead, one can also open GHCi
and do :script myfile.txt
.