From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,243dc2fb696a49cd X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news.glorb.com!cyclone.bc.net!newsfeed.telusplanet.net!newsfeed.telus.net!xmission!nnrp.xmission!adam.ruth From: Adam Ruth Newsgroups: comp.lang.ada Subject: Re: Ada Popularity: Comparison of Ada/Charles with C++ STL (and Perl) Date: Mon, 27 Sep 2004 11:10:05 -0600 Organization: InterCation, inc. Message-ID: References: <11b4d.3849$d5.30042@newsb.telia.net> <415828D5.8030905@unixfu.net> NNTP-Posting-Host: 166.70.154.50 X-Trace: news.xmission.com 1096305005 24510 166.70.154.50 (27 Sep 2004 17:10:05 GMT) X-Complaints-To: abuse@xmission.com NNTP-Posting-Date: Mon, 27 Sep 2004 17:10:05 +0000 (UTC) User-Agent: MT-NewsWatcher/3.2 (PPC Mac OS X) Xref: g2news1.google.com comp.lang.ada:4279 Date: 2004-09-27T11:10:05-06:00 List-Id: In article <415828D5.8030905@unixfu.net>, Chris Humphries wrote: > Adam Ruth wrote: > > In article , > > duggar@mit.edu (Keith H Duggar) wrote: > > Python and Ada tie for my favorite languages (with Lisp coming in a > > close second). Which I use, depends on the task at hand. Ada and > > Python seem to have similar philosophies, though on opposite sides of > > the spectrum. Python's designer had as an explicit goal: > > > > "There should only be one obvious way to do anything". > > > > Some think that that stifles creativity, but I disagree. It frees the > > programmer in my mind. While I'm not sure about the Ada designer, it > > seems that a similar philosophy was in play. That's a very > > "engineering" type of thought, as opposed to a "hacker" type of thought. > > > > That's actually my biggest problem with Perl. Its designer had as a > > goal that there should be as may ways to accomplish things as there are > > programmers. Great if you're just a hacker having fun, terrible if > > you're someone maintaining Perl code. I think that has more to do with > > Perl's unreadability than the syntax. I've never met a "great" Perl > > programmer (read, Perl hacker), who wasn't completely confused by their > > own two month old code. I've seen those same programmers be able to > > digest 20,000 line Python programs in an afternoon. I've not got nearly > > as much experience with Ada, but I can't see it being much different in > > that regard. > > > > That is not completely fair. It depends on the programmer as well. > Having good documentation (including comments) as well as defined > coding standards should make the code readable in any language, > perl, python. Understanding the syntax of the language helps in > both cases. If I know the syntax, and language, I can read any > language the same. That's why I said: > > I've never met a "great" Perl > > programmer (read, Perl hacker), who wasn't completely confused by their > > own two month old code. I'm not talking about well disciplined engineers here. But when it comes to languages, some make bad programmers worse. Perl is one of those languages. Perl also tends to attract and encourage "hacker" style programming and bad practices. That's not to say it has a monopoly, I've seen a bunch of crappy unreadable Python code in my time. Why make life harder for yourself? That's what I ask myself when it comes to language choices. I pick a language that makes it easier to make better code. No language makes it truly impossible to write good code, but some do make it more difficult. Of course, no language makes it impossible to NOT write bad code. > > Perl gets a bad rap, just because there are 12341234 ways to do one > thing, that doesn't make the language bad. I disagree (in the sense of the topic, that being maintainability). No matter how good a programmer you are in Perl, another programmer will find it more difficult to follow your logic if they're used to doing things other ways. It's one more thing for them to process as they read your code. The fewer things that they need to understand as they read your code, the faster they will read it. > I believe that Perl gets > a bad rap from bad programmers/designers and thus bad code. The language > is really a moot point if the foundation doesn't exist, or being built > as you build. Agree completely. But I think the bad rap exists for a reason. I think that the ratio of bad/good code is higher in Perl than Python. Perl seems to encourage bad programming practices. > > All things being equal, Ada is nice to have, yet Perl is no better off > than Python in many respects, unless you talk about OO features and > such. Perl 6 should be interesting (even though it may be vaporware for > a few more years, heh). > > Only reason I could see why the argument of reading the language of > Python over Perl would be better is if there was no documentation and > you had no idea how it worked before opening up your editors and > browsing files. Then the weak link isn't the language, but the software > development team. Though it is easier to blame a language and take it > from ourselves. But that's reality. You rarely have control of those that came before you. Wouldn't you rather that they used a good language over a bad one? You'd certainly rather they used a good practice over a bad one. > > Sure language syntax for readability is very nice to have, but it should > not negate the need for proper documentation and standards :) Could not agree with you more! > > Note: I am not attacking you bud, just pointing out something that is > frustrating :) Understood. I'm not attacking you either. I'm attacking all the bad programmers who made code I need to maintain! > > PS: I have done a ton of work with Python, and specifically Zope, even a > Zope 3 sprint in NYC. Never worked with Zope, it looks interesting, but never really fit in with any of my requirements. -- Adam Ruth adamruth at mac dot com