LWN.net Logo

Kleckner: Unladen Swallow Retrospective

Kleckner: Unladen Swallow Retrospective

Posted Mar 28, 2011 2:45 UTC (Mon) by flewellyn (subscriber, #5047)
In reply to: Kleckner: Unladen Swallow Retrospective by danieldk
Parent article: Kleckner: Unladen Swallow Retrospective

That is REALLY fascinating. I didn't realize that Python's scoping rules caused such issues.


(Log in to post comments)

It's typical...

Posted Mar 28, 2011 6:07 UTC (Mon) by khim (subscriber, #9252) [Link]

This is usual result of "programming for convenience". When you do something not because it's absolutely unavoidable, but because it's easy to do. Later the situation changes... and you have a problem. That's related to our SMP woes: existing programs and languages are often quite inefficient in SMP environment because they include tons of unneeded synchronizations (where in UP is was "easy to do"). The only working solution is employed by kernel people: only introduce carefully designed very high-level boundary around you program (syscalls ABI) and keep internal interfaces unfrozen and slowly changing: then you can remove useless synchronization where it's not actually needed. Sadly few other projects are designed this way: more often then not it's bunch of very small programs with unclean, but frozen API. KDE tries to do things this way but they still have enormous ABI...

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds