Re: Annouce: DBIx::Class, a.k.a "taking the easy way out"

[prev] [thread] [next] [Date index for 2005/07/27]

From: Matt S Trout
Subject: Re: Annouce: DBIx::Class, a.k.a "taking the easy way out"
Date: 13:44 on 27 Jul 2005
On Tue, Jul 26, 2005 at 11:34:18PM -0400, John Siracusa wrote:
> On 7/26/05 11:32 PM, Matt S Trout wrote:
> > Adding even a simple public delegation interface at this point would be
> > a waste of time. Releasing DBIx::Class to CPAN without any such interface
> > would probably be a really bad idea. So sometime between now and then, I'll
> > get round to writing one.
> 
> As someone else already pointed out, implementing even the "default"
> functionality via delegation is a great way to ensure that the delegation
> interface is useful and has the appropriate granularity.  You become the
> first "user" of the API.

You're assuming here I've decided what the "default" functionality is yet. Or
even that there's going to be such a thing :)

Currently you can have an extremely minimal implementation - if you don't
need object based update or retrieve then you don't even need to load primary
key support and search and retrieve_from_sql will both still happily work.

I'm currently dogfooding the extension API via MI; once I get a handle on
how that works I'll delegate the well-defined stuff and dogfood via that
API. Right now I'm refactoring too fast for there to be well-defined stuff
for more than about 3 hours at a time, at which point it changes again.

Look, people.

I know delegation is a good thing for well-defined plugins.

I know MI is unnecessarily hairy if you only want to extend something simple.

But in the early stages of dev, I always refactor constantly and heavily, and
often throw away whole chunks of code and API because it's much better to do
that *now* than after a release.

So I'm not implementing a delegation interface quite yet.

If anybody thinks there should be one already, provide me a patch and I'll
happily merge it. But you'll be responsible for maintaining it when I
rewrite half the core in a day or a week.

The End. :)

        -- 
             Matt S Trout           Website: http://www.shadowcatsystems.co.uk
  Technical Director        E-mail:  mst (at) shadowcatsystems.co.uk
Shadowcat Systems Ltd.

(message missing)

Delegation vs Hooks (was: Annouce: DBIx::Class, a.k.a "taking the easy way out")
=?ISO-8859-1?Q?Ask_Bj=F8rn_Hansen?= 23:27 on 26 Jul 2005

Re: Annouce: DBIx::Class, a.k.a "taking the easy way out"
Matt S Trout 13:44 on 27 Jul 2005

Generated at 16:37 on 28 Jul 2005 by mariachi v0.52