On Wednesday, May 7, 2014 8:09:34 AM UTC+5:30, Chris Angelico wrote: > On Wed, May 7, 2014 at 12:18 PM, Rustom Mody wrote: > > Wrong conclusion! > > These 3 lines look the same and amount to much the same in python and C. > > But as the example widens to something beyond 3 lines, the difference > > will become more and more significant
> Python, C, REXX, BASIC, and pretty much anything else with a broadly > imperative style. > The thing is, though, the difference between one language's variable > semantics and another's is similar to, as Ned said, the difference > between one language's integer semantics and another's. What happens > in C when you do this? > x = 1 << 31; > x += x; > The only possible answer is "it depends", as you can't know how big an > int is, but certainly it's of finite size. In Python, the equivalent > is guaranteed to put 2**32 into x, because integers store arbitrary > precision. That's a pretty important difference, yet we're happy to > call both "integer". A Python list is very different from a LISP list. > A Python array is very different from a Pike array. A Python function > is very different from a mathematical function. Why do we object to > the difference in "variable" but not the others? > Yes, there are differences. That's why we have different languages; > you can't do a minimalist transformation of source code and expect > exactly identical semantics. But we start with familiar names that > will give people some idea of what's going on. The number of possible concepts is infinite The number of words is finite (even assuming unicode!!) IOW A combinatorial problem... -- https://mail.python.org/mailman/listinfo/python-list