Not logged in
Log in now
Create an account
Subscribe to LWN
LWN.net Weekly Edition for December 5, 2013
Deadline scheduling: coming soon?
LWN.net Weekly Edition for November 27, 2013
ACPI for ARM?
LWN.net Weekly Edition for November 21, 2013
Looks like C++' RAII was more influential though and much closer to the final feature.
You don't really think any serious language designer group reinvents the wheel without looking at other languages, do you?
PyCon: Evangelizing Python
Posted Mar 29, 2013 13:56 UTC (Fri) by jschrod (subscriber, #1646)
Well, no (designers), partly (documentation and review) and yes (evangelists).
In my experience, actual language designers know about the concepts. Then it's documented, and the influences are not part of the rationales, though they should be (witness the cited PEP). Then evangelists (witness the talk from the article) come and present 30+ year old stuff as innovative concepts that's the best thing since sliced bread. Reading the article, I couldn't refrain from commenting - you seem to take that much more as an attack as it's meant to.
Posted Mar 29, 2013 18:04 UTC (Fri) by marcH (subscriber, #57642)
> you seem to take that much more as an attack as it's meant to.
Well, it was an attack on "someone"... vague. Quite clearer now.
Posted Mar 30, 2013 14:49 UTC (Sat) by intgr (subscriber, #39733)
> Then evangelists (witness the talk from the article) come and present 30+ year old stuff as innovative concepts that's the best thing since sliced bread
Did he ever claim that these ideas were invented in Python? Did he say the word "innovative" even once in the talk?
All he said is that these features set Python apart from other "scripting languages", wtih Perl and Ruby brought out as examples. It's a true factual statement.
Lisp isn't even on the radar for being a competitor to Python.
Posted Mar 31, 2013 9:46 UTC (Sun) by marcH (subscriber, #57642)
> All he said is that these features set Python apart from other "scripting languages", wtih Perl and Ruby brought out as examples.
In such a promotion speech context omitting references/credits creates a very fine line between the two. I can imagine the speaker saying the latter and the most of the audience misunderstanding the former (of course we'll never know).
I don't think there should be things like "credits" in reference documents like PEPs (PEPs seem to have pointers to discussions which is more than enough).
On the other hand I (finally) agree with jchrod: I expect a "Python's awesome" talk to give credit where it's due. Not just for honesty but also to help me develop my general software engineering culture and better understand *how* to create awesome things, i.e., by standing on the shoulder of giants, recombining existing ideas in new ways, and not patenting trivial prior art.
Posted Apr 1, 2013 16:16 UTC (Mon) by kleptog (subscriber, #1183)
I hope people aren't just referring to lisp's ability to transform source code at compile time because that (IMO) trivialises what the with-statement adds to the language: the ability to factor out certain idioms that would otherwise require explicit handling of exceptions. There's a difference between "language X makes it possible to do idiom Y" and "language X includes explicit support for idiom X".
While it may be that lisp did it first Python is the only contemporary language I know that includes something like the with-statement, which does say something.
Posted Apr 1, 2013 18:16 UTC (Mon) by nybble41 (subscriber, #55106)
Both expressions execute a block of code with a guarantee that some other code will be executed when control leaves the block, no matter how that happens (e.g. normal exit, exception, calling a continuation). Operations built on top of this mechanism often start with "with-" by convention, e.g. "with-open-file" (Common Lisp) and "call-with-input-file" (Scheme) both ensure that the file provided to the inner block is closed afterward.
Posted Apr 1, 2013 22:57 UTC (Mon) by nix (subscriber, #2304)
Posted Apr 2, 2013 16:15 UTC (Tue) by lab (subscriber, #51153)
The C# 'using' statement?
Posted Apr 2, 2013 17:06 UTC (Tue) by hummassa (subscriber, #307)
Posted Apr 2, 2013 17:23 UTC (Tue) by intgr (subscriber, #39733)
1. Python's "with" statement is more flexible, it has access to the exception when it occurs. A "with db_transaction():" block can automatically decide to commit or roll back, unlike C++/C#. You can also implement something like "with ignore_exception(OSError):"
2. Python doesn't require you to create a local variable to hold the state; this always annoys me when using the RAII pattern to hold locks in C++.
3. Prettier syntax ;)
Posted Apr 2, 2013 19:13 UTC (Tue) by hummassa (subscriber, #307)
PyCon: Praising Python for all the wrong reasons
Posted Apr 5, 2013 12:59 UTC (Fri) by gvy (guest, #11981)
Posted Apr 6, 2013 16:01 UTC (Sat) by pboddie (guest, #50784)
Posted Apr 6, 2013 16:18 UTC (Sat) by jake (editor, #205)
Posted Apr 10, 2013 11:09 UTC (Wed) by gvy (guest, #11981)
Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds