Mike Meyer wrote:
Not merely a placeholder, right? A variable in math is a 'placeholder' for a dynamic value, one which can or does change. If one can graph the movement (change) of foo, foo is a variable within that scope. For example:Richard Blackwood <[EMAIL PROTECTED]> writes:
Robert Kern wrote:
Richard Blackwood wrote:Indeed, this language is math. My friend says that foo is a constant
To All:
Folks, I need your help. I have a friend who claims that if I write:
foo = 5
then foo is NOT a variable, necessarily. If you guys can define for
me what a variable is and what qualifications you have to back you,
I can pass this along to, hopefully, convince him that foo is
indeed a variable.
None of us can do that unless you tell us what he thinks the word "variable" means. The terminology is a bit fluid. I suspect that your friend applying a somewhat restricted notion of "variable" that coincides with the behavior of variables in some other language.
and necessarily not a variable. If I had written foo = raw_input(), he
would say that foo is a variable. Which is perfectly fine except that
he insists that since programming came from math, the concept of
variable is necessarily the identical. This can not be true. For
example, I may define foo as being a dictionary, but I can not do this
within math because there is no concept of dictionaries within
mathematics; yet foo is a variable, a name bound to a value which can
change.
Wrong on two counts.
First, new disciplines often redefine words to mean something
different than the disciplines they were derived from. Variable is a
good example of that. In math, a variable is a placeholder in an (a
system of) equation(s), and will have associated with it a (possibly
empty) set of values that satisfy the equation(s).
foo = 5 foo = 6
I can graph foo's movement/change. It can thus be considered a variable within mathematics. If I write:
foo = 5
I can graph this but it will merely be a static point, a constant. Constants are not variables because they do not change, they do not "vary" in content.
In programming, a
variable holds a value of some kind. As you point out, the value may
be complicated, in that it holds one or more objects.
Indeed.
In math, if you say "foo = 5", foo is a variable, with a single valueHe would argue strongly against your notion of variable. In the statement "foo = 5", foo is constant. He would thus argue that foo is a constant and not a variable (regardless of whether you change foo's value in subsequent statements).
(5) that satisfies the equation. In Python, if you say "foo = 5", foo
is a variable, that currently references the value 5.
...
<mike
-- http://mail.python.org/mailman/listinfo/python-list