Don’t remember how, but I ran across the “explicit vs implicit self” argument again while lurking on the internet. I realize this is an old argument, but it sparked up my thought machine and I wanted to share my opinion for the hell of it, dead horse be damned.
To me it’s like a noise your car makes that you never notice because it’s made it for so long. However, when other people ride in your car with you, they point it out. You quickly brush it off with “oh, it’s always done that, doesn’t really bother me.”. Like a crotchety old man, I like things the way they are and aint a damn thing you’re gonna do to change my mind!
Every single language has one(or more!) of those “car noises”. Suck it up and be practical, hippies, and get off my lawn!
Ok, I’m done :)
Comments
Every single language has one(or more!) of those “car noises”. Do they? I’d like to hear from those smug Ruby and Lisp programmers, I don’t think you can get a “car noise” out of them.
Well google time for me…
The only reason I can program in Python at all is that PyDev automatically inserts “self, ” for me after the opening paren of a method def. That doesn’t make explicit self any less brain dead. Other languages have warts, but not many that come up this often in everyday usage, or that are starkly idiotic. IMHO there’s nothing “practical” about tolerating it, just lazy.
I’m not in disagreement with you, but don’t forget part of the Zen Of Python that says “Explicit is better than implicit.”
IMHO, I’d compare it to explicitly defining scope to write “good” Perl code ala
myandour, or even theuse strictpragma in general. Though those things are optional, unlikeself, it is considered best practice in the Perl community touse strictand I’ve often seen folks chastised for not doing so. Partly due to that, I don’t write Perl withoutuse strict. It’s something I’ve always done, it doesn’t bother me. I’d think programmers coming from another language could very quickly become annoyed with having to worry about being explicit with defining scope, and the same is true forselfin Python.What I was really trying to get across in the post is my opinion, which is “I’ve always had to do it, doesn’t bother me.”. Hence the “get off my lawn” remark ;-)
Comment form for «My opinion on the explicit/implicit self argument.»