Well, I personally love Perl. I'm very new to the language but find it to be one of my favorites. However a friend of mine is always trying to get me to use Cold Fusion. I don't have a choice of switching because my webserver only allows perl cgi, and not coldfusion, but I still want to defend my beloved perl against him! In other words, i'm looking for ammo as to how Perl is better than coldfusion. He is always accusing Perl of being outdated.

Replies are listed 'Best First'.
(Ovid) RE: Cold Fusion
by Ovid (Cardinal) on Sep 03, 2000 at 13:15 UTC
    ...i'm looking for ammo as to how Perl is better than coldfusion...

    Be very careful here. You'll find yourself in a trap that many get into. You want to defend Perl, which is fine, but don't do so to the point of failing to acknowledge that other technologies have merit. I have a friend who hates the book "Advanced Perl Programming" because the author committed the heresy of pointing out Perl's strength and weaknesses versus other languages.

    Don't get me wrong. I absolutely love Perl! But to blindly follow a path simply because it's the path you know is a dangerous road to go down. Many, many programmers that I have spoken with have defended their preferred language vehemently, only to later admit that it's the only language that they know well.

    Perhaps what you may consider is not to compare Perl to ColdFusion, but to simply state why you love Perl and let it stand on its own merits.

    Cheers,
    Ovid

RE: Cold Fusion
by athomason (Curate) on Sep 03, 2000 at 11:04 UTC
    Many attacks on Perl are based on ignorance and an incomplete feeling for the language. Perl is much less outdated than it is mature. The huge and active Perl community would tend to support that Perl is much more the latter than the former. Ask what ColdFusion can do that Perl can't, and what applications ColdFusion excels at. Even if the core doesn't support certain features easily, CPAN makes a huge variety of applications trivial to implement. I like Perl because it can do just about anything, and with much less effort than other languages.

    You can find great rebuttals to typical Perl criticisms at Beginning Perl: Ten Perl Myths on perl.com. Explain Perl well to your friend, and you may well convert him :).

(jeffa) RE: Cold Fusion
by jeffa (Bishop) on Sep 03, 2000 at 19:57 UTC
    My first job out of college for working for a sweat shop under the mask of a web content shop. The boss man was such an idiot - he contracted a job out for a client that wanted their database front-end implemented as a Cold Fusion application - and he didn't even have a single programmer who knew Cold Fusion.

    Enter me. Cold fusion strengths:

    • I learned it in a couple of days
    • I finished the project in a couple of weeks
    That being said, most people who didn't know any better would be all gung-ho over Cold Fusion. It is really easy to do basic stuff - data base front end, file uploading, and basic authentication/authorization.

    But when it comes to flexibility and power - Cold Fusion will paint you in a corner. It does make Java applets on the fly though (/me ducks behind wall of invocation).

    Sure Cold Fusion is easy - but everybody should know by now that nothing comes easy - there is always a price to pay. How long will it really last? What last feeping creaturitist will be the straw that breaks the camel's back? (err, no pun intended on that one)

    That was a little over a year ago. Since then I have been learning Perl, PerlDBI, Apache, and mod_perl - and I don't plan on going back. I'd say that I have read about 25 times the amount of material on these subjects that I have read on Cold Fusion. Some would consider that a weakness on Perl, but not me - no pain, no gain.

    Moral of the story - I find Cold Fusion to be a good baby step towards the enlightment that is secure and robust web programming. Nothing more, at least not with the arsenal that Perl has to offer.

    Jeff

RE: Cold Fusion
by KM (Priest) on Sep 03, 2000 at 16:36 UTC
    The extensability of Perl is ammo enough. Also, you can't do backend cron jobs with Cold Fusion, well, you can't do backend anything with it. Generally, any decent size web application will have not only the CGI scripts, but all the backend scripts which help it work (data movers, cleanups, alerts, etc...). When using CF you would have to write those backend things in a second language. Personally, if I can have every piece of an application written in one language, I would.

    But, I have some experience with CF and just let me say I would rather have my right eyeball scooped out with a spoon and the void in my skull filled with rat crap and lemon juice while my genitals are slammed in a car door, than use Cold Fusion (instead of Perl).

    Cheers,
    KM

RE: Cold Fusion
by mwp (Hermit) on Sep 04, 2000 at 13:25 UTC

    I'm going to echo a few things already said here, mostly by jeffa, so forgive me. :-)

    I am rather sad to admit that I have written more lines in ColdFusion Markup Language (CFML) than in Perl. Each have their strengths and disadvantages, and it's important (as has been mentioned) not to "defend" Perl (nor, for that matter, to "attack" me^H^HColdFusion) but to realize that each technology has it's strengths and weaknesses.

    Alongside the development of three intranets and a handful of e-commerce sites in ColdFusion, I was coding up barchart generators and webserver logfile parsers in Perl. I really got a firsthand look (always the best) at the two languages and how they butt up against each other. ColdFusion is incredibly simple to learn and deploy, and really is the epitomy of Web RAD (Rapid Application Development). Take this simple example:

    <cfquery name="ProductList" database="#DSN#"> SELECT Name, Description, Price FROM Products ORDER BY Name </cfquery> <table border="0"> <tr> <th align="left">Name</th> <th align="left">Price</th> </tr> <cfloop query="ProductList"> <tr> <td>#Name#</td> <td>#DollarFormat(Price)#</td> </tr> <tr> <td colspan="2">#Description#</td> </tr> </cfloop> </table>

    It really doesn't get any easier than that. At the time, developing for a Windows platform, the only other option was really ASP with VBScript. PHP hadn't arrived yet, DBD::ODBC was still in it's infancy, and we needed a fairly robust, easy to learn and use solution. Enter the Dragon, as they say. It also had the advantage of being portable to Solaris Unix (to contradict an earlier poster, CF is cross-platform, albiet not nearly at the level that Perl is).

    Backend programming wasn't really a problem (again, to contradict an earlier poster) because ColdFusion came with a scheduler that could be used to run pre-written scripts and specific intervals and times. It has a decent collection of functions for any data type you can imagine (especially dates and times, let me tell you) and could even perform regexps without too much of a hassle. Not only that, but it came with a binary file search engine (PDFs, Word docs, spreadsheets) that was simple to setup and even easier to use. How can you lose? ;-)

    I'll tell ya. CF's worst failing points are where Perl steps in and whoops butt:

    • Speed
      It took a dual Pentium II 400 running NT 4.0 to host a 20-user corporate intranet. The language overhead was nothing short of incredible. Far, far worse than the so-called "slow as beans" Perl interpreter.
    • Complex Operations
      Anything more complicated than adding a day to a date or tokenizing a string required LenghtyBunchesOf(ReallyLongFunctionNames(ThatWereTediousAndPainfulToType()))). Compare this to a little =~ and @%$ magic and the winner is obvious. But maybe not to everyone. :-)
    • Flexibility
      CFML was built for database-to-web programming. That's it. No more, no less. Perl can wedge itself into almost (ALMOST darnit) any place imaginable.
    • Cost
      This is the killer. Not only did you have to pay for a powerful server, NT 4.0 and licenses, MSSQL and licenses, but a $1300 software package and $200 development suites. Yeah right!

    Knowing what I know now about Perl, Apache, DBI and friends, I probably would have never put myself through the hell that I went through if I could have avoided it. <flame retardant>I actually enjoy programming in Perl. I really didn't in CFML. Perl is just a "better" language.</flame retardant>

    Hope this helps to clarify things a little more, and hopefully my incessant rambling didn't put you to sleep...

    Alakaboo

      Has Anyone done a side by side comparison of load and run times.
      I am looking for some sort of benchmark.
      My roommate all the time tries to convince me to switch to CF and abandon the old perl, but I realize that perl has more flexablity and is robust for non-web applications.(plus has a large support base, shout out to perlmonks)
      www.cfmtools.com

      A couple of my friends say that CF is a bloated. I neither support nor deny this clam since I have little experience with CF.
      Is short I would apperiate it if someone who is strong in both perl and CF knowledge comparies and contrasts the two in detail.
      (ya I know compairing a markup language to a scripting program is like apples to hairy coding monkey)

      Should I add CF to my language collection?

      Hacker_j99

        You should never shy away from adding another language to your personal repertoire.

        ColdFusion is bloated IMO. Didn't I say just that in the OP? :-) But if you think you have a need for it, knock your socks off! It's a fun and easy language that a lot of sites still use.

        But Perl is faster, more powerful, and much, much cheaper. A side by side comparison isn't really necessary. It's maybe 10-20% faster to code up a database-to-web app in CFML. Spend a few weeks coding in ColdFusion if you don't believe me. But Perl is FREE. And it's FAST. And you can do more than just database-to-web apps! That's all it boils down to.

        Alakaboo

(crazyinsomniac) RE: Cold Fusion
by crazyinsomniac (Prior) on Sep 03, 2000 at 11:48 UTC
    Hi,

    Perl newby here, love it as well.
    My Java/Web Technologies/Web Programming 'teacher'(more of an instructor really) is always preaching the Sun propaganda that Java servlets are the future.

    That may be true, or even unrelated, but the fact remains, while there are many alternatives, Perl still runs a lot of the web(Yahoo ...).

    Also, like athomason pointed out, Perl is mature. What's that mean, it means it's been here from the start, went through puberty in the jungle that is the 'net, and is now a 200 900 pound gorilla ready to eat you alive.

    Anyway, while Perl is wonderful, and oh so very 'sweet!'-Eric Cartman - Cold Fusion has only one thing over it's head, and it's multithreading.

    And if your friend points that out when you ask him 'what Cold Fusion can do that Perl can't, simply reply : "Perl can run on pretty much anything, not just Win* machines, like Cold Fusion."

     
    "cRaZy is co01, but sometimes cRaZy is cRaZy".
                                                          - crazyinsomniac

Re: Cold Fusion
by jacques (Priest) on Jan 13, 2003 at 14:02 UTC
    People like Cold Fusion for the same reasons they like PHP. Cold Fusion is very easy to learn and designed strictly for the Web. Perl, on the other hand, is a general purpose programming language like Java or C++.

    PHP is more popular than Cold Fusion mostly because PHP is free. It should be noted that every day, PHP is looking more like Perl. PHP is slowly becoming a general purpose language. You can now use it for shell scripting and GUI work. Why is this happening to PHP? Because people realize that there are major advantages to using a language that is flexible. As others have pointed out, you can use Perl for both backend and frontend development. Perl is probably the most flexible language on the planet, and it will only become more flexible in version 6.