Hacker News new | ask | show | jobs
by kccqzy 2024 days ago
You can't just put `putStrLn "Hello"` in the top level of a Haskell program and expect it to work. You can do it in a REPL, but that's besides the point.
1 comments

Sure. I was responding to this:

“To me, if something acts logically like it is run from top to bottom, it's a scripting language.”

I don’t see them as scripting languages, but that definition would include them.

And my point is that Haskell doesn't even look like it's run from top to bottom.

Example, consider this mutually recursive definition at the top level:

    a = 1:b
    b = 2:a
It doesn't, by any means logical or not, look like it runs from top to bottom. If so, the first line would have immediately been an error because `b` is an undefined name.
My mistake - I thought Haskell was like OCaml in not having a main function:

http://stackoverflow.com/questions/28711563/ddg#28711778

You broadly dismissed my entire comment, which was completely correct about Ocaml, but I accept that you are correct about Haskell.