At 10:37 AM 11/15/2001 +0000, [EMAIL PROTECTED] wrote:
>Dear Bennett,
>
>On Thu, 15 Nov 2001, Bennett Haselton wrote:
> > After converting the data in my project from text files to MySQL 
> tables,
> > things are certainly working more smoothly than they were before, but 
> since
> > I use objects (in Perl, which barely supports objects, but that's 
> another
> > story) I have to write a lot of annoyingly repetitive code to create 
> the
> > object, run a query on the database to get the data that I need, set 
> the
> > object's member variables equal to the results returned from the query, 
> and
> > then do all those steps in reverse if the object's member values have
> > changed later.
>
>Hmm... I'm sure plenty of people would disagree strongly with your remark
>of bad OO support in Perl. But, that is beside the point. You could either
>search CPAN (http://www.cpan.org/) and see if you find what you need there
>(Surely somebody had the same problem already), and if not, take a look at
>the AUTOLOAD "magic" sub in Perl (that'd be perldoc perlsub, search for
>'Autoloading').

I can't do it in Perl.  I can't even quantify the amount of money we've 
already lost by using Perl.  By not supporting OO, I mean things like the 
fact that if you define a member function of a class, then
         $classname::functionname($arg1, $arg2);
and
         $classname->functionname($arg1, $arg2);
will both compile, but one is a static function that passes the class name 
as the first argument, and the other is a non-static function that passes 
the arguments as listed.  No one on any Perl list that I'm on could make 
sense of why they did that.  If you wanted a static function, you'd make it 
static; otherwise, you'd make it non-static.  The way Perl does it, you 
have to put some logic at the beginning of your function to check whether 
the first argument is the class name, and if it is, branch into the 
"static" function code, or else branch to the "non-static" function 
code.  Bizarre.  I think that to the maximum extent possible, a programming 
language should ensure that a typo will cause the program *not to run*, 
instead of running and doing something unexpected.

Has anyone used a beta of Visual Studio .NET enough to know if it can do 
all of this?  i.e. being able to do something along the lines of
         user myuser = user.GetObjectFromTableRow("bennett");
         myuser.sendReminders();
         myuser.emailaddress = '[EMAIL PROTECTED]';

in three lines -- with Perl and MySQL it takes about 20.

I think there are some purposes that free, open-source software is better 
suited for (security protocols and other well-defined problems that don't 
change with a constantly changing technological environment), however the 
question of when and when not to use open source software is clouded by the 
notion that open-source software is always better.  If I'm going to be 
using an IDE to do rapid application development, I want a 
**closed-source**, **proprietary** system that **costs money** :)

         -Bennett

[EMAIL PROTECTED]     http://www.peacefire.org
(425) 649 9024


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to