From: Jay Flaherty Date: April 30 1999 11:39am Subject: Re: Need an opinion - C vs PHP List-Archive: http://lists.mysql.com/mysql/2688 Message-Id: <199904301258.IAA28608@alder.engr.utk.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7BIT On 29 Apr 99, at 10:42, Ed Carp wrote: > Not at all. It all depends on what you're looking for, and what your > experience level is. If your site is going to get a lot of hits, C is the > best tool, because it's the fastest. Not necessarily. Sometimes the bottleneck is not in the code. Also, if you imbed the perl interpreter into the web server then your speed of execution is nearly the same. Add a persistent database connection via a perl module and there is little difference in speed of execution. If you have limited programming > experience, PHP or PERL will perhaps fit your needs better, because it's > more of a RAD tool than C is, but you trade off speed and flexibility. But > no interpreted language will be faster than compiled native code, that's > just common sense. True, but your talking the web here. That means CGI. CGI itself is inherently slow. If your writing code that uses the webservers own API then you'll see a dramatic increase in speed. People write CGI in perl is because of RAD as you mentioned above, portability of code without tweaking or recompiling, it's most excellent regular expression engine (web development mostly involves text parsing not number crunching), and last but not least, it huge free library of modules that give you the tools to do your job without reinventing the wheel. Find me any C/C++ code the does what the DBI.pm module does. My code will work with nearly any database backend by changing one line of code. Find me any C/C++ code that comes close to CGI.pm module. > > For example, I have a web page that uses MySQL to generate an index of > news headlines and links. I wrote this in C, because it had to be fast - > when you're searching a database of 24,000+ headlines, and have multiple > people banging away at the server, it pays to make it as fast as possible, > and the HTML was no harder to generate than it was in any other language. > PHP or PERL would've been at least half as fast (I know because I > benchmarked the same app written in C, PERL, and PHP). > If speed is important, perl allows you to imbed C/C++ code into your perl modules. Just rewrite those parts where speed is important and write the rest in perl where text manipulation/RE use is important. > There's a saying in certain programming circles that people who don't know > how to program choose PERL or PHP, people who do choose C or C++, and I > think there's a certain amount of truth in that. Why is MySQL qritten in > C, rather than in PERL? It would've certainly been easier. Why is most > system software written in C? Why is it that most every modern operating > system is written in C or C++? Again, we are talking web development. Perl is not the best tool for everything (like building OS's, unless you wanted to write a OS rapidly that will run on any platform ;-). There is another saying in "certain" programming circles that there's more than one way to do it (TMTOWTDI). People choose perl because it allows you to quickly develop working programs without much programming experience. People continue to choose perl because of all the reasons mentioned above... Take care of your shoes... Jay fty@stripped