On Sat, Dec 19, 2009 at 2:51 PM, Nick Guenther <kou...@gmail.com> wrote: > Python is about thinking about what you're doing. It's one of those > languages that forces you to work on a higher level (not that there > aren't lots of places where python is used as a scripting > language--that code tends to come out badly, but that's because it's > written just to get the job done). > > Ideal code is abstracted code, what possible use does repeating > yourself in the tree have? I know drivers have to declare a common set > of globals and make some macro calls and various entry-points are > found by sticking to a naming scheme, but that's trivia, hardly enough > to justify "valid uses for copied code". Anytime I find myself wanting > to copy some code it's always meant I've stumbled over an abstraction > I haven't made yet, so what in the world is src/ doing that -requires- > copied code?
I must disagree here... there's nothing about *any* programming language [1] that forces one to work on a higher level. That's up to the programmer. I've seen even the simplest tasks, or ones that scream for a nice, simple abstraction, done horribly (if at all) in any language, including python. My experience grading countless programs from freshman-senior students, which are increasingly written in python, show it's not the programming language... it's the programmer. Good design + good coding practices + tons-o-work forces one to think more and come up with a better design, not the language. -ryan [1] except of course for Haskell, the ONE TRUE GOD of proper programming :P