Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #96368 > unrolled thread
| Started by | tdev@freenet.de |
|---|---|
| First post | 2015-09-11 14:26 -0700 |
| Last post | 2015-09-12 00:03 +0100 |
| Articles | 20 on this page of 133 — 20 participants |
Back to article view | Back to comp.lang.python
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: Python handles globals badly. tdev@freenet.de - 2015-09-11 14:26 -0700
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-11 23:50 +0200
Re: Python handles globals badly. Michael Torrie <torriem@gmail.com> - 2015-09-11 18:01 -0600
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-12 07:22 +0200
Re: Python handles globals badly. MRAB <python@mrabarnett.plus.com> - 2015-09-12 18:05 +0100
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-13 14:04 +0200
Re: Python handles globals badly. Steven D'Aprano <steve@pearwood.info> - 2015-09-13 22:06 +1000
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-13 14:11 +0200
Re: Python handles globals badly. Ned Batchelder <ned@nedbatchelder.com> - 2015-09-13 05:17 -0700
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-15 05:36 +0200
Re: Python handles globals badly. Emile van Sebille <emile@fenx.com> - 2015-09-12 10:18 -0700
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-13 14:06 +0200
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-13 14:10 +0200
Re: Python handles globals badly. Michael Torrie <torriem@gmail.com> - 2015-09-12 20:32 -0600
Re: Python handles globals badly. "Skybuck Flying" <skybuck2000@hotmail.com> - 2015-09-13 14:05 +0200
Re: Python handles globals badly. random832@fastmail.us - 2015-09-11 20:11 -0400
Re: Python handles globals badly. Michael Torrie <torriem@gmail.com> - 2015-09-11 18:34 -0600
Re: Python handles globals badly. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 03:57 +0100
Re: Python handles globals badly. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 04:01 +0100
Re: Python handles globals badly. Random832 <random832@fastmail.com> - 2015-09-12 00:06 -0400
Re: Python handles globals badly. Random832 <random832@fastmail.com> - 2015-09-12 00:16 -0400
Re: Python handles globals badly. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 05:17 +0100
Terminology: “reference” versus “pointer” (was: Python handles globals badly.) Ben Finney <ben+python@benfinney.id.au> - 2015-09-12 14:27 +1000
Re: Python handles globals badly. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 05:34 +0100
Re: Python handles globals badly. Random832 <random832@fastmail.com> - 2015-09-12 00:34 -0400
Re: Terminology: “reference” versus “pointer” Random832 <random832@fastmail.com> - 2015-09-12 00:42 -0400
Re: Terminology: “reference” versus “pointer” Steven D'Aprano <steve@pearwood.info> - 2015-09-13 02:32 +1000
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 09:54 -0700
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-13 03:06 +1000
Re: Terminology: "reference" versus "pointer" Emile van Sebille <emile@fenx.com> - 2015-09-12 10:14 -0700
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-13 03:24 +1000
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-13 03:34 +1000
Re: Python handles globals badly. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 05:45 +0100
Re: Terminology: “reference” versus “pointer” Ben Finney <ben+python@benfinney.id.au> - 2015-09-12 14:52 +1000
Re: Terminology: “reference” versus “pointer” Random832 <random832@fastmail.com> - 2015-09-12 01:03 -0400
Re: Terminology: “reference” versus “pointer” Steven D'Aprano <steve@pearwood.info> - 2015-09-13 02:50 +1000
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 10:04 -0700
Re: Python handles globals badly. Random832 <random832@fastmail.com> - 2015-09-12 01:07 -0400
Re: Terminology: “reference” versus “pointer” Ben Finney <ben+python@benfinney.id.au> - 2015-09-12 15:20 +1000
Re: Python handles globals badly. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 06:25 +0100
Re: Python handles globals badly. Random832 <random832@fastmail.com> - 2015-09-12 01:35 -0400
Re: Terminology: “reference” versus “pointer” Random832 <random832@fastmail.com> - 2015-09-12 01:42 -0400
Re: Python handles globals badly. Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 06:54 +0100
Re: Terminology: “reference” versus “pointer” Chris Angelico <rosuav@gmail.com> - 2015-09-12 16:02 +1000
Re: Terminology: “reference” versus “pointer” Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-12 07:05 +0100
Re: Python handles globals badly. Chris Angelico <rosuav@gmail.com> - 2015-09-12 16:13 +1000
Re: Terminology: “reference” versus “pointer” Random832 <random832@fastmail.com> - 2015-09-12 02:15 -0400
Re: Python handles globals badly. Random832 <random832@fastmail.com> - 2015-09-12 02:25 -0400
Re: Terminology: “reference” versus “pointer” Ben Finney <ben+python@benfinney.id.au> - 2015-09-12 16:26 +1000
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 05:46 -0700
Re: Terminology: "reference" versus "pointer" Laura Creighton <lac@openend.se> - 2015-09-12 16:41 +0200
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 08:13 -0700
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 09:17 -0700
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 10:12 -0700
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-13 04:14 +1000
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-13 03:48 +1000
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 11:45 -0700
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-13 22:50 +1000
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-13 23:29 +1000
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-13 18:34 -0700
Re: Terminology: "reference" versus "pointer" Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-14 04:34 +0100
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 12:58 -0700
Re: Terminology: "reference" versus "pointer" Emile van Sebille <emile@fenx.com> - 2015-09-12 15:14 -0700
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 15:34 -0700
Re: Terminology: "reference" versus "pointer" Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-13 00:14 +0100
Re: Terminology: "reference" versus "pointer" Ned Batchelder <ned@nedbatchelder.com> - 2015-09-12 17:02 -0700
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 17:28 -0700
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 17:44 -0700
Re: Terminology: "reference" versus "pointer" Mark Lawrence <breamoreboy@yahoo.co.uk> - 2015-09-13 03:22 +0100
Re: Terminology: "reference" versus "pointer" Ned Batchelder <ned@nedbatchelder.com> - 2015-09-12 19:25 -0700
Re: Terminology: "reference" versus "pointer" Michael Torrie <torriem@gmail.com> - 2015-09-12 20:35 -0600
Re: Terminology: "reference" versus "pointer" Ben Finney <ben+python@benfinney.id.au> - 2015-09-13 12:42 +1000
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-13 08:31 -0700
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-14 01:39 +1000
Re: Terminology: "reference" versus "pointer" Ben Finney <ben+python@benfinney.id.au> - 2015-09-14 06:48 +1000
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-13 18:13 -0700
Re: Terminology: "reference" versus "pointer" Dennis Lee Bieber <wlfraed@ix.netcom.com> - 2015-09-13 12:32 -0400
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 17:23 -0700
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 16:39 -0700
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-13 10:19 +1000
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 17:25 -0700
Re: Terminology: "reference" versus "pointer" rurpy@yahoo.com - 2015-09-12 18:07 -0700
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-12 20:54 +0300
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 11:21 -0700
Re: Terminology: "reference" versus "pointer" Jussi Piitulainen <harvesting@makes.email.invalid> - 2015-09-12 23:02 +0300
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-12 17:10 -0400
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-13 12:30 +1000
Re: Terminology: "reference" versus "pointer" Jussi Piitulainen <harvesting@makes.email.invalid> - 2015-09-13 09:40 +0300
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-12 23:13 +0300
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-12 17:27 -0400
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-13 21:04 +0300
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-14 05:03 +1000
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-13 15:04 -0400
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 02:17 +0300
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-14 11:10 +1000
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 04:22 +0300
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-14 12:38 +1000
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 06:23 +0300
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-15 02:59 +1000
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 20:24 +0300
Re: Terminology: "reference" versus "pointer" Ned Batchelder <ned@nedbatchelder.com> - 2015-09-14 11:29 -0700
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 22:30 +0300
Re: Terminology: "reference" versus "pointer" Ned Batchelder <ned@nedbatchelder.com> - 2015-09-14 13:16 -0700
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 23:32 +0300
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-14 11:30 +1000
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 05:26 +0300
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-14 09:52 +1000
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 03:30 +0300
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-14 10:58 +1000
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-13 19:38 -0400
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 17:48 +0300
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-14 11:10 -0400
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-15 03:03 +1000
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-14 13:34 -0400
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-16 00:26 +1000
Re: Terminology: "reference" versus "pointer" Emile van Sebille <emile@fenx.com> - 2015-09-14 10:51 -0700
Re: Terminology: "reference" versus "pointer" Gregory Ewing <greg.ewing@canterbury.ac.nz> - 2015-09-16 20:14 +1200
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-16 18:18 +1000
Re: Terminology: "reference" versus "pointer" Ben Finney <ben+python@benfinney.id.au> - 2015-09-16 18:24 +1000
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-16 18:33 +1000
Re: Terminology: "reference" versus "pointer" Chris Angelico <rosuav@gmail.com> - 2015-09-15 03:59 +1000
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-14 14:02 -0400
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-16 00:14 +1000
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 20:45 +0300
Re: Terminology: "reference" versus "pointer" Random832 <random832@fastmail.com> - 2015-09-14 14:00 -0400
Re: Terminology: "reference" versus "pointer" Akira Li <4kir4.1i@gmail.com> - 2015-09-14 21:17 +0300
Re: Terminology: "reference" versus "pointer" Steven D'Aprano <steve@pearwood.info> - 2015-09-13 03:08 +1000
Re: Terminology: "reference" versus "pointer" Rustom Mody <rustompmody@gmail.com> - 2015-09-12 10:26 -0700
Re: Terminology: "reference" versus "pointer" Ben Finney <ben+python@benfinney.id.au> - 2015-09-13 11:13 +1000
Re: Python handles globals badly. Chris Angelico <rosuav@gmail.com> - 2015-09-12 16:27 +1000
Re: Terminology: “reference” versus “pointer” Chris Angelico <rosuav@gmail.com> - 2015-09-12 16:31 +1000
Re: Python handles globals badly. Ian Kelly <ian.g.kelly@gmail.com> - 2015-09-11 16:10 -0600
Re: Python handles globals badly. MRAB <python@mrabarnett.plus.com> - 2015-09-12 00:03 +0100
Page 4 of 7 — ← Prev page 1 2 3 [4] 5 6 7 Next page →
| From | Mark Lawrence <breamoreboy@yahoo.co.uk> |
|---|---|
| Date | 2015-09-14 04:34 +0100 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.514.1442201711.8327.python-list@python.org> |
| In reply to | #96544 |
On 14/09/2015 02:34, rurpy--- via Python-list wrote: Goodbye, *plonk* -- My fellow Pythonistas, ask not what our language can do for you, ask what you can do for our language. Mark Lawrence
[toc] | [prev] | [next] | [standalone]
| From | rurpy@yahoo.com |
|---|---|
| Date | 2015-09-12 12:58 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <0034a8bd-cd81-4c5e-9759-1ce1aa97e2e2@googlegroups.com> |
| In reply to | #96442 |
On 09/12/2015 11:48 AM, Steven D'Aprano wrote: > On Sun, 13 Sep 2015 02:17 am, rurpy@yahoo.com wrote: > [...] >> the model of Python I eventually >> developed is very much (I think, haven't read the whole thread) like >> Random832's. I think of boxes (objects) with slots containing "pointers" >> that "point" to other boxes. Even today when dealing with complex >> Python data structures, I draw boxes and arrows to help me understand >> them and think of the arrows as "pointers". > > If you're going to abuse terminology, why don't you call the boxes "floats" > since they "float around in memory", > [...] I was not proposing that, I was talking about the use of the term "pointer". > C is not the only, or even the first, language to have standardised on a > meaning for pointer in computer science. Pascal had pointers long before C, > and I'm sure Pascal wasn't the first either. [I'm not sure about the "long before" part given they were nearly contemporaneous.] Right, and each of them uses the word (and others like "function", "call" "arguments", etc) in their own specific way, which they define as part of the description of the language. "function" in C is different than "function" in Pascal which is different than "function" in Python. That C (or Pascal) used the term first does not mean that it was "standardized" by that use to have that precise definition forever after. > "Pointer" is a standard primitive data type across dozens of languages: it's > an abstract data type holding the memory address of a variable (either a > named, statically allocated variable, or more often, an anonymous, > dynamically allocated variable). As such, it requires that variables have a > fixed address. If the variable can move, the pointer will no longer point > to the variable. See my comments on "fixed address" in another post. Your definition of "address" is too narrow. > If you want to use "pointer" to refer to something else, the onus is on you > to make it clear that you're using it in a non-standard way. Of course. Nobody should ever say (a least formally) just "pointer" and expect the entire (assumed diverse) audience to have a common single understanding of what is meant. But that applies to most terminology like "reference" as well. It is why language documentation has things like definitions and glossaries. > Some day, most programmers will be using nothing by dynamic languages which > lack pointers-the-data-type, I don't think there is any direct relationship between pointers and dynamic languages. Go is not a dynamic language yet it does not not allow unrestrained pointer use a'la C. My impression is that unmanaged pointers (in the C sense) are recognized these days as dangerous and that nearly all new languages including static ones manage "pointers" (perhaps under a different name) to prevent the problems that occur with C. > and the term will lose its baggage and can be > safely used as a generic English term for "a thing which points". The tiny > minority of systems programmers writing device drivers and kernel code in > Rust (C having been long-since delegated to the wastebin of history -- well > that's my fantasy and I'm sticking to it) That's fine, so we are talking about the far distant future, maybe year 3000 or so. :-) > will learn that, outside of their > own niche, "pointer" does not have the technical meaning that they are used > to, and everyone else will be as blissfully unaware of said technical > meaning as the average programmer today is of continuations and futures. > > But this is not that day. I think you underestimate the ability of human beings (even programmers) to interpret words in a context dependent way. The question is whether what "pointer" means in languages that use the word is *so* different than its meaning in the Python sense, that using it for Python is more misleading than helpful. You think so, perhaps because you focus on the unmanaged and memory-address aspects of its use. I consider those as non-determining characteristics of a thing that points to something and instead consider its pointingness to be its defining characteristic, in those languages and in Python, and thus find it perfectly descriptive for Python.
[toc] | [prev] | [next] | [standalone]
| From | Emile van Sebille <emile@fenx.com> |
|---|---|
| Date | 2015-09-12 15:14 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.455.1442096077.8327.python-list@python.org> |
| In reply to | #96452 |
On 9/12/2015 12:58 PM, rurpy--- via Python-list wrote: > The question is whether what "pointer" means in languages that use the > word is*so* different than its meaning in the Python sense I can't find a single reference to pointer in the python docs outside of ctypes. What is its python sense? Is-there-no-hammer-in-this-toolbox-ly y'rs Emile
[toc] | [prev] | [next] | [standalone]
| From | rurpy@yahoo.com |
|---|---|
| Date | 2015-09-12 15:34 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <0f742e14-1983-42ae-a774-f8a9f3485e34@googlegroups.com> |
| In reply to | #96465 |
On 09/12/2015 04:14 PM, Emile van Sebille wrote: > On 9/12/2015 12:58 PM, rurpy--- via Python-list wrote: > >> The question is whether what "pointer" means in languages that use the >> word is*so* different than its meaning in the Python sense > > I can't find a single reference to pointer in the python docs outside > of ctypes. What is its python sense? I should have said "proposed sense" (except I don't really mean proposed as in "let's change all the docs" but as "let's stop the hissy-fits when someone uses the term"), i.e. the way I, I think random832, and others use it re python. Sorry, I see in retrospect my phrasing could be confusing.
[toc] | [prev] | [next] | [standalone]
| From | Mark Lawrence <breamoreboy@yahoo.co.uk> |
|---|---|
| Date | 2015-09-13 00:14 +0100 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.457.1442099690.8327.python-list@python.org> |
| In reply to | #96466 |
On 12/09/2015 23:34, rurpy--- via Python-list wrote: > On 09/12/2015 04:14 PM, Emile van Sebille wrote: >> On 9/12/2015 12:58 PM, rurpy--- via Python-list wrote: >> >>> The question is whether what "pointer" means in languages that use the >>> word is*so* different than its meaning in the Python sense >> >> I can't find a single reference to pointer in the python docs outside >> of ctypes. What is its python sense? > > I should have said "proposed sense" (except I don't really mean > proposed as in "let's change all the docs" but as "let's stop the > hissy-fits when someone uses the term"), i.e. the way I, I think > random832, and others use it re python. Sorry, I see in retrospect > my phrasing could be confusing. > The "hissy-fits" are caused because Python the language does not have pointers, so by definition there is no need to mention them in any way, shape or form in any Python thread. What is so difficult to understand about that? I would say it's not rocket science, but the insurers that paid out over Ariane 5 maybe wouldn't be too happy with that. -- My fellow Pythonistas, ask not what our language can do for you, ask what you can do for our language. Mark Lawrence
[toc] | [prev] | [next] | [standalone]
| From | Ned Batchelder <ned@nedbatchelder.com> |
|---|---|
| Date | 2015-09-12 17:02 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <5d871fb7-03f5-4b58-b03b-d411fc693658@googlegroups.com> |
| In reply to | #96467 |
On Saturday, September 12, 2015 at 7:15:18 PM UTC-4, Mark Lawrence wrote: > On 12/09/2015 23:34, rurpy--- via Python-list wrote: > > On 09/12/2015 04:14 PM, Emile van Sebille wrote: > >> On 9/12/2015 12:58 PM, rurpy--- via Python-list wrote: > >> > >>> The question is whether what "pointer" means in languages that use the > >>> word is*so* different than its meaning in the Python sense > >> > >> I can't find a single reference to pointer in the python docs outside > >> of ctypes. What is its python sense? > > > > I should have said "proposed sense" (except I don't really mean > > proposed as in "let's change all the docs" but as "let's stop the > > hissy-fits when someone uses the term"), i.e. the way I, I think > > random832, and others use it re python. Sorry, I see in retrospect > > my phrasing could be confusing. > > > > The "hissy-fits" are caused because Python the language does not have > pointers, so by definition there is no need to mention them in any way, > shape or form in any Python thread. What is so difficult to understand > about that? I would say it's not rocket science, but the insurers that > paid out over Ariane 5 maybe wouldn't be too happy with that. > > -- > My fellow Pythonistas, ask not what our language can do for you, ask > what you can do for our language. > > Mark Lawrence After all the discussion here, it seems a bit disingenuous to flatly say that Python has no pointers, and to dismiss people's debate about it. Pointers are not a simple concept. In a language like C, they have a number of aspects, some of which are apparent in the Python world, and some of which are not. Python names refer to values, and this behavior is clearly related to pointers under the hood. Whatever Python implementation you are talking about, a Python name must have some way to indicate what value it refers to. In CPython, this is implemented with a pointer. This is what people mean when they say that of course Python has pointers. But in C, pointers mean more than that. You can perform arithmetic on them, to access memory as a linearly addressed abstraction. Python has nothing like this. In C, a pointer can refer to another variable. Again, Python has nothing like this. Python names refer to values, but they cannot refer to other names. These last two reasons are why people say that Python does not have pointers. As a language concept, Python has no pointers, because you cannot have names referring to names, and because you cannot perform arithmetic on references. The references from names to values are not things that can be manipulated themselves. In its implementation, CPython uses pointers. But if you say that Python has pointers because CPython uses pointers, then you might as well say that Python is statically typed because the CPython source has type declarations. It's a confusion of implementation and language to conflate these two. --Ned.
[toc] | [prev] | [next] | [standalone]
| From | Rustom Mody <rustompmody@gmail.com> |
|---|---|
| Date | 2015-09-12 17:28 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <10052ca2-adac-45a9-b30e-7664eefc5a99@googlegroups.com> |
| In reply to | #96470 |
On Sunday, September 13, 2015 at 5:32:44 AM UTC+5:30, Ned Batchelder wrote: > In its implementation, CPython uses pointers. But if you say that Python > has pointers because CPython uses pointers, then you might as well say > that Python is statically typed because the CPython source has type > declarations. It's a confusion of implementation and language to conflate > these two. Yes that "because" can be ridiculous/disingenuous. Good deal of it in this thread itself. Consider int. Say there are 10,000 int something_or_other; in the CPython sources Out of these say 50 are the direct implementation python's int The remaining 9950 C-ints have no direct correlate with python's int. The disingenuous reasoning is some kind of statistical argument of 10,000 vs 50. The reasonable reasoning is that only those 50 are relevant to the discussion. Likewise pointers If one were to trace the semantics of looking up a variable in CPython, one would find some C code doing pointer dereferencing. One would also find zillions of other uses of pointers that have no direct correlate to python's variables. What of it? If I were to be more technically correct than saying "Python's variables are C-pointers" I could say something like: "Python variables are C pointers with much stronger data-structure invariants related to ownership. And implemented with ref-counting, gc etc as scaffolding to ensure them. These stronger invariants make impossible in python common C errors like null-pointer referencing. The corresponding cost of these stronger invariants is that C's pointer type is rendered un-first-class in python"
[toc] | [prev] | [next] | [standalone]
| From | rurpy@yahoo.com |
|---|---|
| Date | 2015-09-12 17:44 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <d99f5308-dc65-430b-9471-82559d364c49@googlegroups.com> |
| In reply to | #96470 |
On 09/12/2015 06:02 PM, Ned Batchelder wrote: > On Saturday, September 12, 2015 at 7:15:18 PM UTC-4, Mark Lawrence wrote: > [...] > But in C, pointers mean more than that. You can perform arithmetic on > them, to access memory as a linearly addressed abstraction. Python has > nothing like this. > > In C, a pointer can refer to another variable. Again, Python has > nothing like this. Python names refer to values, but they cannot > refer to other names. > > These last two reasons are why people say that Python does not have > pointers. > > As a language concept, Python has no pointers, because you cannot have > names referring to names, and because you cannot perform arithmetic on > references. The references from names to values are not things that can > be manipulated themselves. The reason python doesn't have pointers is that the majority of developers and documenters chose not to use the term. I don't see that pointer arithmetic is necessary to call something a pointer (and i think someone else said the same earlier). And references to a name I think that is an artifact of C because in C names and values are inextricably welded together at compile time -- a pointer to a name is also necessarily a pointer to a value. Since there are no C pointers to don't point to values they can provide a way to describe Python "things" that also point to values. If one acknowledges that those two properties are not intrinsic requirements for pointerness then describing the things "in" a python object that are used to identify and dereference other objects, as pointers is not at all unreasonable.
[toc] | [prev] | [next] | [standalone]
| From | Mark Lawrence <breamoreboy@yahoo.co.uk> |
|---|---|
| Date | 2015-09-13 03:22 +0100 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.462.1442110992.8327.python-list@python.org> |
| In reply to | #96475 |
On 13/09/2015 01:44, rurpy--- via Python-list wrote: > On 09/12/2015 06:02 PM, Ned Batchelder wrote: >> On Saturday, September 12, 2015 at 7:15:18 PM UTC-4, Mark Lawrence wrote: >> [...] >> But in C, pointers mean more than that. You can perform arithmetic on >> them, to access memory as a linearly addressed abstraction. Python has >> nothing like this. >> >> In C, a pointer can refer to another variable. Again, Python has >> nothing like this. Python names refer to values, but they cannot >> refer to other names. >> >> These last two reasons are why people say that Python does not have >> pointers. >> >> As a language concept, Python has no pointers, because you cannot have >> names referring to names, and because you cannot perform arithmetic on >> references. The references from names to values are not things that can >> be manipulated themselves. > > The reason python doesn't have pointers is that the majority of developers > and documenters chose not to use the term. Nonsense. > > I don't see that pointer arithmetic is necessary to call something a pointer > (and i think someone else said the same earlier). And references to a name > I think that is an artifact of C because in C names and values are inextricably > welded together at compile time -- a pointer to a name is also necessarily a > pointer to a value. Since there are no C pointers to don't point to values > they can provide a way to describe Python "things" that also point to values. There are certainly no C pointers in Jython or IronPython but please don't let that stop you. > > If one acknowledges that those two properties are not intrinsic requirements > for pointerness then describing the things "in" a python object that are used > to identify and dereference other objects, as pointers is not at all unreasonable. > You appear to have the same level of knowledge of Python internals as the RUE has of the Python 3.3+ FSR unicode implementation. Let's have some fun, is Python pass by value or pass by reference? It has to be more interesting debating that than the drivel that's gone before in this thread. -- My fellow Pythonistas, ask not what our language can do for you, ask what you can do for our language. Mark Lawrence
[toc] | [prev] | [next] | [standalone]
| From | Ned Batchelder <ned@nedbatchelder.com> |
|---|---|
| Date | 2015-09-12 19:25 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <1790a372-ac4f-4569-9afb-2fda0b846e96@googlegroups.com> |
| In reply to | #96479 |
On Saturday, September 12, 2015 at 10:23:24 PM UTC-4, Mark Lawrence wrote: > On 13/09/2015 01:44, rurpy--- via Python-list wrote: > > On 09/12/2015 06:02 PM, Ned Batchelder wrote: > >> On Saturday, September 12, 2015 at 7:15:18 PM UTC-4, Mark Lawrence wrote: > >> [...] > >> But in C, pointers mean more than that. You can perform arithmetic on > >> them, to access memory as a linearly addressed abstraction. Python has > >> nothing like this. > >> > >> In C, a pointer can refer to another variable. Again, Python has > >> nothing like this. Python names refer to values, but they cannot > >> refer to other names. > >> > >> These last two reasons are why people say that Python does not have > >> pointers. > >> > >> As a language concept, Python has no pointers, because you cannot have > >> names referring to names, and because you cannot perform arithmetic on > >> references. The references from names to values are not things that can > >> be manipulated themselves. > > > > The reason python doesn't have pointers is that the majority of developers > > and documenters chose not to use the term. > > Nonsense. > > > You appear to have the same level of knowledge of Python internals as > the RUE has of the Python 3.3+ FSR unicode implementation. Let's have > some fun, is Python pass by value or pass by reference? It has to be > more interesting debating that than the drivel that's gone before in > this thread. Mark, I'm sure you can be more respectful than this. And let's please not start down the "PBV or PBR" road... :( --Ned.
[toc] | [prev] | [next] | [standalone]
| From | Michael Torrie <torriem@gmail.com> |
|---|---|
| Date | 2015-09-12 20:35 -0600 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.465.1442111717.8327.python-list@python.org> |
| In reply to | #96475 |
On 09/12/2015 08:22 PM, Mark Lawrence wrote: > You appear to have the same level of knowledge of Python internals as > the RUE has of the Python 3.3+ FSR unicode implementation. Let's have > some fun, is Python pass by value or pass by reference? It has to be > more interesting debating that than the drivel that's gone before in > this thread. Oh you are a devious one there! This should get good.
[toc] | [prev] | [next] | [standalone]
| From | Ben Finney <ben+python@benfinney.id.au> |
|---|---|
| Date | 2015-09-13 12:42 +1000 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.466.1442112179.8327.python-list@python.org> |
| In reply to | #96475 |
Michael Torrie <torriem@gmail.com> writes: > On 09/12/2015 08:22 PM, Mark Lawrence wrote: > > You appear to have the same level of knowledge of Python internals as > > the RUE has of the Python 3.3+ FSR unicode implementation. Let's have > > some fun, is Python pass by value or pass by reference? It has to be > > more interesting debating that than the drivel that's gone before in > > this thread. > > Oh you are a devious one there! This should get good. No, it should stop there. Taunting trolls is no more welcome here than trolling. -- \ “I have always wished for my computer to be as easy to use as | `\ my telephone; my wish has come true because I can no longer | _o__) figure out how to use my telephone.” —Bjarne Stroustrup | Ben Finney
[toc] | [prev] | [next] | [standalone]
| From | rurpy@yahoo.com |
|---|---|
| Date | 2015-09-13 08:31 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <557c7158-6a8f-42e3-8cec-411f29363436@googlegroups.com> |
| In reply to | #96485 |
On 09/12/2015 08:42 PM, Ben Finney wrote: > Michael Torrie <torriem@gmail.com> writes: >> On 09/12/2015 08:22 PM, Mark Lawrence wrote: >>> You appear to have the same level of knowledge of Python internals as >>> the RUE has of the Python 3.3+ FSR unicode implementation. Let's have >>> some fun, is Python pass by value or pass by reference? It has to be >>> more interesting debating that than the drivel that's gone before in >>> this thread. >> >> Oh you are a devious one there! This should get good. > > No, it should stop there. Taunting trolls is no more welcome here than > trolling. Ben, If the troll being taunted here is referring to me, I suggest you review my posts in this thread, You've said in the past that you don't read posts from Google Groups (that's fine, your choice) so perhaps you do not have a clear idea what I have written. One of the most effective ways for a community to discredit itself is to make accusations of trolling in response to unpopular but legitimate and reasonable opinion.
[toc] | [prev] | [next] | [standalone]
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2015-09-14 01:39 +1000 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.477.1442158785.8327.python-list@python.org> |
| In reply to | #96506 |
On Mon, Sep 14, 2015 at 1:31 AM, rurpy--- via Python-list <python-list@python.org> wrote: > Ben, > > If the troll being taunted here is referring to me, I suggest > you review my posts in this thread, You've said in the past > that you don't read posts from Google Groups (that's fine, > your choice) so perhaps you do not have a clear idea what I > have written. I think Ben's referring to taunting jmf, whom Mark called the "RUE" or "Resident Unicode Expert". There has been a long-standing antagonism between those two (which is completely understandable), and one which often spills over into vitriolic posts (which is less acceptable). ChrisA
[toc] | [prev] | [next] | [standalone]
| From | Ben Finney <ben+python@benfinney.id.au> |
|---|---|
| Date | 2015-09-14 06:48 +1000 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.499.1442177308.8327.python-list@python.org> |
| In reply to | #96506 |
Chris Angelico <rosuav@gmail.com> writes: > I think Ben's referring to taunting jmf, whom Mark called the "RUE" or > "Resident Unicode Expert". There has been a long-standing antagonism > between those two (which is completely understandable), and one which > often spills over into vitriolic posts (which is less acceptable). Chris has it right. What's especially unacceptable is invoking that person for amusement, irrelevant to the conversation. It's one thing to respond when a person comes into a thread to troll unbidden; it is quite another to taunt them unprompted. -- \ “I call him Governor Bush because that's the only political | `\ office he's ever held legally.” —George Carlin, 2008 | _o__) | Ben Finney
[toc] | [prev] | [next] | [standalone]
| From | rurpy@yahoo.com |
|---|---|
| Date | 2015-09-13 18:13 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <9036e3c8-24ce-43c6-bb54-ccb31098e13a@googlegroups.com> |
| In reply to | #96527 |
On Sunday, September 13, 2015 at 2:49:13 PM UTC-6, Ben Finney wrote: > Chris Angelico <rosuav@gmail.com> writes: > > > I think Ben's referring to taunting jmf, whom Mark called the "RUE" or > > "Resident Unicode Expert". There has been a long-standing antagonism > > between those two (which is completely understandable), and one which > > often spills over into vitriolic posts (which is less acceptable). > > Chris has it right. > > What's especially unacceptable is invoking that person for amusement, > irrelevant to the conversation. It's one thing to respond when a person > comes into a thread to troll unbidden; it is quite another to taunt them > unprompted. Thank you for making that clear.
[toc] | [prev] | [next] | [standalone]
| From | Dennis Lee Bieber <wlfraed@ix.netcom.com> |
|---|---|
| Date | 2015-09-13 12:32 -0400 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.482.1442161946.8327.python-list@python.org> |
| In reply to | #96475 |
On Sun, 13 Sep 2015 12:42:48 +1000, Ben Finney <ben+python@benfinney.id.au>
declaimed the following:
>Michael Torrie <torriem@gmail.com> writes:
>
>> On 09/12/2015 08:22 PM, Mark Lawrence wrote:
>> > You appear to have the same level of knowledge of Python internals as
>> > the RUE has of the Python 3.3+ FSR unicode implementation. Let's have
>> > some fun, is Python pass by value or pass by reference? It has to be
>> > more interesting debating that than the drivel that's gone before in
>> > this thread.
>>
>> Oh you are a devious one there! This should get good.
>
>No, it should stop there. Taunting trolls is no more welcome here than
>trolling.
>
Besides, we went through that last year...
--
Wulfraed Dennis Lee Bieber AF6VN
wlfraed@ix.netcom.com HTTP://wlfraed.home.netcom.com/
[toc] | [prev] | [next] | [standalone]
| From | rurpy@yahoo.com |
|---|---|
| Date | 2015-09-12 17:23 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <8948afad-4cb5-415a-92a7-2954b2723885@googlegroups.com> |
| In reply to | #96467 |
On 09/12/2015 05:14 PM, Mark Lawrence wrote: > On 12/09/2015 23:34, rurpy--- via Python-list wrote: >> On 09/12/2015 04:14 PM, Emile van Sebille wrote: >>> On 9/12/2015 12:58 PM, rurpy--- via Python-list wrote: >>> >>>> The question is whether what "pointer" means in languages that >>>> use the word is*so* different than its meaning in the Python >>>> sense >>> >>> I can't find a single reference to pointer in the python docs >>> outside of ctypes. What is its python sense? >> >> I should have said "proposed sense" (except I don't really mean >> proposed as in "let's change all the docs" but as "let's stop the >> hissy-fits when someone uses the term"), i.e. the way I, I think >> random832, and others use it re python. Sorry, I see in retrospect >> my phrasing could be confusing. > > The "hissy-fits" are caused because Python the language does not have > pointers, so by definition there is no need to mention them in any > way, shape or form in any Python thread. Right. "And our country has no social unrest so there is no need for any mention of social unrest on our internet." (a common justification for censorship in some countries.) You can't define away reality, Bucky. But the issue is not one that can be expressed as a binary "has" or "has not". It is about how to best describe how Python works and what descriptions work best for what groups of people (at least in my view). > What is so difficult to understand about that? You'll find my questions about that in my previous posts. You can find them here: https://mail.python.org/pipermail/python-list/2015-September/thread.html If you have any specific serious questions I'll be happy to try to answer them for you. > I would say it's not rocket science, but the > insurers that paid out over Ariane 5 maybe wouldn't be too happy with > that. No clue what the Ariane 5 has to do with Python or how Python works is described.
[toc] | [prev] | [next] | [standalone]
| From | Rustom Mody <rustompmody@gmail.com> |
|---|---|
| Date | 2015-09-12 16:39 -0700 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <239d70be-e78b-41d9-ad7b-c50461971784@googlegroups.com> |
| In reply to | #96466 |
On Sunday, September 13, 2015 at 4:05:21 AM UTC+5:30, ru...@yahoo.com wrote:
> On 09/12/2015 04:14 PM, Emile van Sebille wrote:
> > On 9/12/2015 12:58 PM, rurpy--- via Python-list wrote:
> >
> >> The question is whether what "pointer" means in languages that use the
> >> word is*so* different than its meaning in the Python sense
> >
> > I can't find a single reference to pointer in the python docs outside
> > of ctypes. What is its python sense?
>
> I should have said "proposed sense" (except I don't really mean
> proposed as in "let's change all the docs" but as "let's stop the
> hissy-fits when someone uses the term"), i.e. the way I, I think
> random832, and others use it re python. Sorry, I see in retrospect
> my phrasing could be confusing.
Here is my post a little way up:
-----------------------------------
On Saturday, September 12, 2015 at 10:02:40 PM UTC+5:30, Steven D'Aprano wrote:
> On Sat, 12 Sep 2015 02:42 pm, Random832 wrote:
>
> > Anyway, maybe we do need a term to distinguish Python/C#/Java pointers
> > from C/C++ pointers - maybe call it a "non-arithmetic" pointer, since
> > the key thing about it is you can't do pointer arithmetic on them to get
> > the object "next to" the one it points at.
>
> How about *just don't call them pointers*? You know, since they aren't
> pointers in the computer science sense.
>
> The Free On-line Dictionary of Computing defines "pointer":
>
> 1. <programming> An address, from the point of view of a
> programming language. A pointer may be typed, with its type
> indicating the type of data to which it points.
<snip>
> Insisting that Python has pointers is like insisting that you use a text
> editor by flipping bits. "What happens if I press Ctrl-X?" "Well, these
> bits on the screen flip from black to white, these bits flip from white to
> black, and these stay the same."
>
This is from the docs
https://docs.python.org/3/library/functions.html#id
id(object)
Return the "identity" of an object. This is an integer which is guaranteed to be unique and constant for this object during its lifetime. Two objects with non-overlapping lifetimes may have the same id() value.
CPython implementation detail: This is the address of the object in memory.
-----------------------------------
which may be summarized as:
1. Steven (quoting Online dictionary): Pointer = Address
2. Steven: "Python has pointers" is ridiculous
3. Python docs: id returns an address in (C)Python
To which we have Chris saying CPython ≠ Python
Which reminds me of another definition
Fig-Leaf: A device for converting poor porn into high art
Even in languages like C with an ISO standard adhering to the standard is
academic (gcc's switch is --pedantic) and it is in practice major
implementations like gcc and MSC that define and push the standard.
In python, CPython is the standard and other implementations can lay claim to
being 'python' to the extent that they adhere to the standard.
Or have I missed some ISO-ization?
[toc] | [prev] | [next] | [standalone]
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2015-09-13 10:19 +1000 |
| Subject | Re: Terminology: "reference" versus "pointer" |
| Message-ID | <mailman.458.1442103563.8327.python-list@python.org> |
| In reply to | #96469 |
On Sun, Sep 13, 2015 at 9:39 AM, Rustom Mody <rustompmody@gmail.com> wrote: > To which we have Chris saying CPython ≠ Python > Which reminds me of another definition > Fig-Leaf: A device for converting poor porn into high art > > Even in languages like C with an ISO standard adhering to the standard is > academic (gcc's switch is --pedantic) and it is in practice major > implementations like gcc and MSC that define and push the standard. > > In python, CPython is the standard and other implementations can lay claim to > being 'python' to the extent that they adhere to the standard. > > Or have I missed some ISO-ization? ISO hasn't standardized Python, but the Python developers do distinguish between the language and the various implementations. Yes, CPython does push forward ahead of the others, and thus sometimes another Python will replicate CPython behaviour rather than seeking an official language pronouncement; but other times, the PyPy or Jython or Brython folks come to python-dev with a question. As a general rule, most PEPs are about the language, not the implementation, so you can eyeball those to see what you'd need to implement to write a Python from scratch. CPython does not intrinsically define the standard. Some languages are done this way (Pike, for instance), but Python is not. ChrisA
[toc] | [prev] | [next] | [standalone]
Page 4 of 7 — ← Prev page 1 2 3 [4] 5 6 7 Next page →
Back to top | Article view | comp.lang.python
csiph-web