En Mon, 17 Nov 2008 23:53:25 -0200, <[EMAIL PROTECTED]> escribió:
On Nov 17, 4:06 pm, "Gabriel Genellina" <[EMAIL PROTECTED]>
wrote:
En Mon, 17 Nov 2008 15:44:23 -0200, <[EMAIL PROTECTED]> escribió:
On Nov 17, 8:54 am, "Gabriel Genellina" <[EMAIL PROTECTED]>
wrote:
Candidate to *Longest and Most Boring Thread of the Year* - started more than a month ago, currently discussing "The official definition
    of call-by-value", and "What't the value of an object":
        http://groups.google.com/group/comp.lang.python/t/6163956596a8c082/

Nice.  The Python Reference defines objects, the core concept
of Python, as id, type, and value, and then leaves one clueless
about what a value is, and several notable Python contributors
declare the subject boring.

The C99 language standard does not define what "memory" is, even if many
parts on the language definition rely on how memory actually works. This
has not prevented programmers from writing good C code.

Do you really want to compare the C standard to the
Python Reference in the context of document quality?
I haven't looked at it in years but my recollection
is that even 15 years ago it was orders of magnitude
more detailed and specific than the Python Reference.

Sure it is. Thanks to such details Python can be successfully compiled on many platforms. But they still leave some details unspecified, like what exactly means "to store a value". You can't specify everything - sometimes even on purpose so different implementations are free to choose whichever alternative fits best.

Secondly, "memory", "computer", "electricity" are all
obviously outside the scope of a language definition.
The nature of a concept that is the central concept
in the language is equally obviously in scope.  I am
amazed at the lengths some people here will go to
defend problems in Python, even turning them into
virtues.   Why not just say, "yea, well it needs work
but <insert favorite apologetics here>"?

Yes, sure. I don't know how old that Python definition of object is (I mean, the page that says "identity+type+value"), but in particular, I would not have used the term "value" there. "state" is more broadly used, and less confusing. The word "value" as used in that generic description has a different meaning that the same term as used in "call by value" and "the value of an expression".

Thirdly, the question is not about, "*can* you use it?".
Obviously people make use of lots of software with much
worse docs that the Python Docs.  The questions is about
"is it complete and accurate?", and "can I get the
information I need to understand/use Python from it
effectively?"  (Those are not yes/no questions.)

Certainly the docs have to be improved. But some details, although refering to fundamental concepts, are not so important in order to understand the language or effectively use it. (Uh, I hate to use another mathematical example). Most people that know about trigonometric functions like sin and cos use them without much consideration. They exist and are well defined; sin is (oposite side)/(hypotenuse) by example. One can do a lot of work in trigonometry based on those definitions; and probably *most* work in trigonometry was developed before a rigurous definition of the sin function could even be expressed. Because the above geometric definition cannot satisfy a mathematician: he wants an expression he can work with and study its properties (and had to wait until concepts like limit, series, infinite were available). But from a practical POV, the naïve geometric definition is more than enough to do any useful work. Back to Python, I think a precise definition of "value" (or better "state") isn't required to effectively use the language. The simple concept of "whatever information the object carries with itself" should be enough to understand it, I presume. And perhaps a few examples explaining it would be in order...

I don't feel anybody would improve their Python skills chasing what the
"value" of an object is, least to make contortions so some arbitrary
definition of "call by value" be applicable to the language.

And I feel you're wrong.  The reason I am interested
in the definition of an object stems from a very early
experience with Python.  Not fully getting what an
object was, I decided to write an "examine" function
to printout everything that could be found out about
an object.  I printed the id, then all the attributes.
But they all turned out to be objects so I examine()'d
them recursively (and quickly discovered the need for
a depth limit.)  Then I tried to print the 3rd aspect,
it's value, and ran smack into the issues you find so
boring.

I'm sure you learned a lot more from your experiments than reading an academic and precise definition of "value" in a perfect document...

Also if you hadn't been so bored and had actually
read the most recent postings you would have
discovered I made absolutely no mention at all of
call-by-anything, let alone tried to contort anything.
I was *asking* what "value" meant in context of the
P.L.R. and floating some possible proto-definitions
based on what I learned.  Sheesh!

Note that the summary was based on all messages posted last week - there were three subthreads spawned from the original one, of which I choose to mention two. I was not specifically talking about your posts, nor anybody in particular. A little story: A long time ago a friend of mine got a multi effects pedal for his guitar. He was really excited showing me his new acquisition. "Hear! Hall reverb!" (chord played). "Hear! Church reverb now!" (same chord played; more reverb). After hearing a few dozen different settings, I didn't care if the damn thing made the most beautiful chorus effect in the world: I was just bored to death! And that had nothing to do with his playing skills (muuuuch higher than mine, btw!), nor the box.

It's a boring
topic for *ME* and the above "Most Boring Thread" is just *MY* opinion; if
you or anyone else enjoy the discussion or consider it important in some
way, of course you're all free to continue as long as you wish.

Oh come on, that's pretty disingenuous.  The weekly
Python News is not exactly lil'ole Gabriel posting
an opinion to c.l.p.  But since it is your opinion,
I sure you won't mind me responding with mine.

Yes, it *was* just my opinion, like everything else I write. I didn't mean to dismiss your posts (or anyone else's) at all. It was just a comment - and looks like I'll have to avoid those in the future...

BTW, I think some other thread got a few more than 300 posts, so this
one -currently at 268- still has a chance to get the first prize as
Longest Thread - but you'll have to write hard :)

I had no intention of writing anything else until
you responded.  Maybe we can do it together!!

Uhm, don't count on my replies to reach the first position! :)

I guess this goes a long way to explaining why the Python docs
suck so badly in many areas.

I don't think so, anyway, I guess the usual reply is "all contributions
are welcome".

One of the reasons I would like to formulate a good
model of an object's value and type is so that I could
try to offer something better.  Responses like yours
are significantly demotivating.

Sorry, that was not the intent at all!!!

--
Gabriel Genellina

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to