Sherm Pendley wrote: > On Monday, February 10, 2003, at 11:04 PM, Erik Price wrote: > > Java doesn't let you just bust out what's on your mind -- I've > > discovered that you really have to plan out your application's public > > interface > You say that as if it's a bad thing, or as if it applies only to Java. > I've also seen quite a bit of Perl that would have benefited greatly if > the author had put some planning into it before he started busting out > code.
Hey, Ada forces you to >>REALLY<< plan out your application's public interface... and internal interface too. But I wouldn't wish Ada on anyone unless the final software is attached to something with wings on it. I've not used Java, so I can't compare it on the scale of things, but having spent a handful of years working on Ada, discovering perl was a breath of fresh air. a lot of my perl scripts are one-offs that let me get some dirty work done. There is no public interface, I just need to get some work done. And besides, dumb programmers can mess up the most formal languages. One Ada program I inherited had multiple levels of "try"/"throw" blocks which would then immediately "catch" anything and continue on. The first time I saw it, I didn't understand why an exception was being raised, caught, and ignored. Then the other poor slob workin on the project explained that was the way the original coder would do a "goto". Ya see, goto's weren't allowed by project standards, but they didn't rule out exceptions, so the guy found a loophole. suffice it to say, the code was a mess. luckily this thing didn't fly (though it was military hardware, so conceivably, someone could die if it locked up) THe short of it is that you can't force someone to program well. Bad programmers always find ways around well-intentioned rules. And good programmers dont appreciate arbitrary rules getting in their way. The only thing you can do is make the easiest path also be the best way of doing things, and hope for the best. In that respect, I'll admit that perl's approach to OO is more of a "bolt-on" than a "easy path to good interfacing". If Class::Contract had been built into perl from the get-go, I think things would be significantly different/better. Course, I dont use Class::Contract either, because I learned OO the perl way first and it stuck. I dont even know of any modules on CPAN that use Class::Contract as its interface method. Oh well, I hear rumors that Perl six will fix some of these issues. > Welcome to Rivendell, Mr. Anderson. It seems you've been living two lives. In one, you're a simple hobbit from the Shire, in the other, you possess the ring of power which could bring about the end of middle earth. My collegues believe I'm wasting my time, but I want you and this fellowship to take this ring to Mordor and throw it into the crack of Mount Doom. Frodo Anderson: "Yeah. Wow, that sounds like a really good deal. But I think I got a better one. How about I give you the finger... and you give me my phone call." Merry: "Why didn't I take the blue pill" Pippen: "There is no spoon" _______________________________________________ Boston-pm mailing list [EMAIL PROTECTED] http://mail.pm.org/mailman/listinfo/boston-pm

