Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Perl = Machine Language?

by gryphon (Abbot)
on Jul 04, 2001 at 02:56 UTC ( #93716=perlmeditation: print w/replies, xml ) Need Help??

Within the company I work, a particular department's primary IT guy is a ColdFusion addict. Despite having nearly all of merlyn's Perl books behind him on a shelf and claiming to have a working knowledge of the language, he really doesn't know much of anything significant about Perl and has even less experience coding it. Whenever the question of web technologies comes up with regard to a new project, not surprisingly, he always claims that ColdFusion will be the best tool for the job.

To be totally honest, I don't have any real exposure to ColdFusion. I've read the FAQs and some user opinions, but that's about it. The negative I've heard doesn't come close to balancing the positive, so I haven't bothered to actually learn CFML yet. Besides, Perl does everything I could ever want to do and much, much more. Granted, sometimes it's not as easy as "drop single HTML-like tag in this document and magic works mysteriously behind the scenes" like ColdFusion is reported to be. Granted, the learning curve is a little higher and longer. Yet, there's something comforting about dealing with Perl.

Whenever I begin playing with Perl to solve a larger, more detailed project with multiple parts, I have a calm reassurance that there is a solution. In another words, no matter how insanely complex a project might be, I know Perl's up to the challenge. The only question is whether or not I am. I'm limited only by deficiencies in my imagination, my abilities, and my access to getting help from more experienced Monks on this site. I never have to worry, "Can Perl do that?"

While I've spent considerable time trying to convince the very non-technical technical decision makers that Perl is a better option, I've never really gotten into a deep debate with this one CF developer. However, I do get sick enjoyment out of hearing him constantly tell his boss, "ColdFusion can't really do that." Or, "That's a limitation with the CF server." Or, "It keeps crashing. Stupid CF server." Or, "It's not very intuitive. You tell it this, and it does something totally different." Or, "Maybe we should just write something to automatically reboot the CF server once an hour or so to make sure we limit downtime."

At one point, when he was especially frustrated by CF not being able to display one of a series of graphics dynamically, he exclaimed, "It almost seems like it'd be easier to write this in machine language." I commented, "You know, you could just do that in Perl." He replied, "Yeah, you could. But that's basically machine language anyway."

code('Perl') || die;

Replies are listed 'Best First'.
Re: Perl = Machine Language?
by eejack (Hermit) on Jul 04, 2001 at 05:28 UTC
    I've done very large and complex bits in coldfusion, and while I would in almost every case say that perl would be easier for me to put together, the *nearness* of colf fusion tags to html makes it a markup language that html folks can use.

    Often, I could work out the difficult bits and leave presentation portions to the folks who know presentation ( I make an ugly website... ) and the combined effect is quite workable.

    That said, perl kicks coldfusion's butt in functionality, scalability and speed, but (and I can feel the XP draining before I post) I would hazard to say that for simple systems coldfusion works very nicely and deploys very quickly - in some cases quicker and easier than perl.

    It is easier to learn, easier to use, very easy to connect to databases.

    Also, since it predates things like php, and it works fine on NT (much better than ASP ever will), it does have a fairly loyal following.


      Interestingly enough, one of my friends has used both Coolfusion and PHP, and claimed that there was nothing better than CoolFusion for displaying database stuff in a webpage. He then went on to add that for anything more complicated, you really should use PHP.

      I imagine if we substituted the word 'Perl' for 'PHP' the statement would still be valid.

      I didn't believe in evil until I dated it.

Re: Perl = Machine Language?
by voyager (Friar) on Jul 04, 2001 at 04:39 UTC
    When I first started doing web programming, I worked for an all-Microsoft (ASP, VB-Script) shop. I took a look at Cold-Fusion and eagerly anticipated "dynamic web pages with out programming".

    So how do you loop? Well there's a LOOP (or whatever) tag. And conditional logic? There's IF ELSE END-IF (or whatever). In other words, programming constructs. But I found the tags far harder to deal with than VB-Script. I'm sure there are lot's of things I missed, and that have been added since, but I wasn't impressed.

    I think it comes down to a need to do HTML and programming logic. If you do it all, you'll probably prefer Perl and Or if you deal with designers for HTML you need a templating system (or prefer one in any case).

    But the bottom line is that every web project worth working on involves programming logic, and I'd rather implement it in Perl (or VB-Script) than in someone's stupid, proprietary tags that are a poor substitute.

(jeffa) Re: Perl = Machine Language?
by jeffa (Bishop) on Jul 04, 2001 at 18:47 UTC
    It's _ALL_ machine language in the end. ;)

    Seriously, the _REAL_ reason to NOT use Colf Fusion is that is simply does not allow a seperation of presentation and data/logic. You have to embed HTML into your logic, which in the end will always be a maintenance nightmare.

    Why seperate? Because you can give 2 people jobs instead of one (scale that to teams and it is even more useful). One person can be a skilled programmer and the other a skilled designer. Even if you are the sole worker, you still benefit from seperating - if nothing more than to ease your mind by allowing you to focus on the task at hand, without having the other block your mental flow with noise.

    Why don't you show your friend the power of templating, such as Template and my personal favorite, HTML::Template. That ought to convince him that Perl is much much much MUCH more than machine language.


Re: Perl = Machine Language?
by tadman (Prior) on Jul 04, 2001 at 13:49 UTC
    Perl probably looks like machine language to the uninitiated, especially those used to using a cute-and-fuzzy, HTML-like, drool-proof, impact-resistant language such as Cold Fusion. It is truly surprising what some intrepid people have done with that product, considering it is the computer language equivalent of Tinker Toys. But then again, Danny Hillis built a tic-tac-toe "computer" using only Tinker Toys.

    I've taught people to use Perl before, and it isn't all that difficult. Why sell yourself short and learn something like CFML or PHP? Perhaps they are just misguided, because the same effort applied to learning Perl (or Java) would be a lot more productive.
Shadenfreud (was "Re: Perl = Machine Language?")
by rrwo (Friar) on Jul 04, 2001 at 19:58 UTC
    At one point, when he was especially frustrated by CF not being able to display one of a series of graphics dynamically, he exclaimed, "It almost seems like it'd be easier to write this in machine language." I commented, "You know, you could just do that in Perl." He replied, "Yeah, you could. But that's basically machine language anyway."

    Sounds like the guy doesn't know what he's talking about. Kind of sad.

    The big problem with ColdFusion (and similar systems) is that you're "married" to it. Point this out the management and let them ponder the implications.

    With Perl you can use most web servers on most platforms, and there's a growing codebase on CPAN that adds all sorts of capabilities to your web site (ie, dynamic graphics, document types other than HTML, gateways to other systems, even use code written in other languages, etc.)

Re: Perl = Machine Language?
by Sinister (Friar) on Jul 04, 2001 at 19:39 UTC
    I never had the change to play with CF, but something that pukes up URLs filled with comma's can't be good.

    The problem in this is the same problem we're all sharing! Once you found something to your liking you start to defend it as you do not wish to betray yourself.

    Just take the DDD for instance... Everyone here shouts NO NO and a flame war is started in milliseconds. While the latest DDD does a good thing with perl (Better then the TkDebugger anyway) - But you haven't tried the latest one since all say it is no good.

    It's just plain old langsisem! (That racisem for coding-languages!)

    We all participate in that Even I! (just check the first lines of this message...) while I try so hard not to...

    Sinister greetings.
    perldoc -q $_

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://93716]
Approved by root
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (3)
As of 2018-08-14 06:42 GMT
Find Nodes?
    Voting Booth?
    Asked to put a square peg in a round hole, I would:

    Results (144 votes). Check out past polls.