On Friday, June 21, 2013 8:54:50 PM UTC-5, MRAB wrote: > On 22/06/2013 00:51, Rick Johnson wrote: > > On Friday, June 21, 2013 5:49:51 PM UTC-5, MRAB wrote: > > My argument has always been that mutables should not be > > passed into subroutines as default arguments because bad > > things can happen. [...] I also believe that a programmer > > should not be prevented from passing mutable default > > arguments [...] > So, having mutables as default arguments is a bad idea, > but a programmer should not be prevented from doing that, > and a warning message should be printed on such occasions.
Well i'll admit that does sound like a contradiction. Basically i meant, programmers should be *discouraged* from passing mutables as default arguments but not *prevented*. Of course, utilizing a stateless subroutine like i suggest, argument mutability would not matter. Sometimes when you're passionate about something your explanations become so verbose as to render your idea lost in the noise. Obviously i made that mistake here :) In my last reply to Rotwang i explained the functionality i seek to achieve in a set of three interactive examples. Take a look at those and let me know what you think. > > Why should i help the developers of this language. What have > > they done for me? > > They've developed this language, and provided it for free. > They've even released the source code. You perceive flaws > that you say must be fixed, but you're not going to help > to fix them. Agreed. And i am thankful for everyone's contributions. I can be a bit harsh sometimes but my intention has always been to improve Python. > I _do_ want you to help to improve the language, and I > don't care if you don't get it right first time. I didn't > get it right first time when I worked on the regex module > (I think that what I have on PyPI is my _third_ attempt!). Well thanks for admitting you are not perfect. I know i am not. We all had to start somewhere and anyone who believes he knows everything is most assuredly a fool. Learning is a perpetual process, same for software evolution. > > You want to gain my respect? Then start engaging in honest > > debates. Start admitting that yes, somethings about Python > > are not only undesirable, they're just plain wrong. > Python isn't perfect, but then no language is perfect. > There will always be compromises, and the need to maintain > backwards compatibility means that we're stuck with some > "mis-features", but I think it's still worth using; I > still much prefer it to other languages. I understand. We can't break backwards compatibility for everything, even breaking it for some large flaws could cause a fatal abandonment of the language by long time users. I just don't understand why i get so much hostility when i present the flaws for discussion. Part of my intention is to air the flaw, both for new users and old users, but a larger intention is to discover the validity of my, or others, possible solutions. And even if that solution involves a fork, that is not a bad thing. Creating a new fork and then garnering an acceptance of the new spinoff would lead to at worse, a waste of time and a huge learning experience, or at best, an evolution of the language. > > Stop calling me a troll when i am not. And not just me, stop > > calling other people trolls too! Stop using the personal > > attacks and straw man arguments. Sorry. I failed to explain that this statement was meant not directly for you but as a general statement to all members. Sometimes i feel like my back is against the wall and i'm fighting several foes at once. That can lead to me getting defensive. -- http://mail.python.org/mailman/listinfo/python-list