Re: making a DBI under Pugs now
[email protected] (Darren Duncan) Thu, 24 Nov 2005 14:46:50 -0800
| Newsgroups | perl.dbi2.dev |
|---|---|
| Message-ID | <p06230900bfabebc0d522@[192.168.1.101]> |
At 9:39 PM +0000 11/24/05, Tim Bunce wrote: >On Wed, Nov 02, 2005 at 06:28:00PM -0800, Darren Duncan wrote: >> Today when I was on #perl6 at irc.freenode.net and, out of the blue >> just following my connect, autrijus asked me if I would port >> DBI::PurePerl and DBD::MySQLPP to Perl 6 such that their presence can >> help with Pugs new object handling abilities. > >I think that's a bad idea, personally. > >I see little good and much harm that could come from doing this. > >I want DBI v1 to be a poster child for the ability of Perl 6 to run >Perl 5 extensions - one way or another (either via ponie or an embedded >libperl5.so). > >The goal of helping "Pugs new object handling abilities" is not worth >the fragmentation and other problems that would arise. There are a >multitude of significant OO modules can could be used for this instead. Well, you have nothing to worry about; I decided weeks ago to avoid such problems and not write any modules named 'DBI' or 'DBD' for Perl 6. Rather, the rewrite of 'Rosetta' in Perl 6 will satisfy the necessary issues, both as an example of object oriented programming, and as a working solution for native database access in Perl 6. FYI, I am now positioning Rosetta as being a solution in the same problem domain as DBI itself, where the main thing it "does" is provide a generic lower-level transport layer between an application and database (and is a foundation for more specialized APIs), and that it is conceptually close to the database's native API. The main difference between Rosetta and DBI is that Rosetta does more munging of what it transports, to further homogenize the appearance of different databases. See http://svn.openfoundry.org/pugs/ext/Rosetta-Incubator/docs/Overview , which I just wrote this monday, for the whole comparison; it is incomplete, but readers should learn a lot about the intentions of Rosetta that they didn't before. Rosetta manifests my own ideas of an ideal "DBI v2", though I will never name it 'DBI' to avoid stepping on your toes. I won't give any pretense that this is an official successor to DBI v1, though I'm hoping that the official DBI v2 and my effort can cross-pollinate good ideas. -- Darren Duncan