i252/prax1/prax1.hs

31 lines
840 B
Haskell
Executable File

#!/usr/bin/env runghc
-- This is a comment
-- Running interactivly:
-- gchi prax1.hs
-- and just call functions
-- :q ← quit
-- :r ← reload this script
-- :i prax.hs ← load another script or load this if not loaded before
doubleMe x = x * 3
doubleUs x y = doubleMe x + doubleMe y
doubleSmallNumber x = if x <= 100 then doubleMe x else x
-- ' <- uptick is used as convetion to mark lightly modified function
doubleSmallNumber' x = (if x <= 100 then doubleMe x else x) + 1
-- compile: ghc -dynamic prax1.hs
-- flag -dynamic is needed under Arch Linux, can be leaved off on ther envs
-- flag --make is needed?
-- runghc prax1.hs
-- this also works ↑ instead of save-compile-run cycle
-- entrypoint that is ran after compile
main = do
putStrLn "Hello World"
name <- getLine
putStrLn ("Hello " ++ name ++ "!")