
Duke Normandin wrote:
Hello....
I'm 2 days into Haskell. NOT new to Perl, PHP, M(umps), TCL, newLISP. I'm using "YAHT.pdf" as an intro to Haskell. Here's a quote:
[quote] ... if you have a value x, you must not think of x as a register, a memory location or anything else of that nature. x is simply a name, just as Hal is my name. You cannot arbitrarily decide to store a different person in my name any more than you can arbitrarily decide to store a different value in x. This means that code that might look like the following C code is invalid (and has no counterpart) in Haskell:
int x = 5; [/quote]
So is fair to say that an expression in Haskell like:
x = 5
is more like a constant in imperative languages - say Perl? E.g.
use constant SECONDS_PER_DAY => 86400; -- duke
No. Think of x :: Int x = 5 more in terms of an expression rather than a variable. If you evaluate the expression x, say you would like to print its evaluation on the screen, then x is evaluated to the value 5. As the name of an expression needs to be unique in order to refer to it anywhere else in the program, you cannot have something like x :: Int x = 53 somewhere else in your code. Because then the expression x would be ambiguous. You will get the idea in a couple of days. I am sure. Best, Thomas
_______________________________________________ Beginners mailing list Beginners@haskell.org http://www.haskell.org/mailman/listinfo/beginners