Replying to myself ...

I also believe that what I said, the no mandatory shared code, would also work just as well in any language, including a major new Perl 5 version.

-- Darren Duncan

On 2015-02-04 5:19 PM, Darren Duncan wrote:
On 2015-02-04 4:28 PM, David E. Wheeler wrote:
On Feb 4, 2015, at 4:23 PM, Greg Sabino Mullane <g...@turnstep.com> wrote:

As you may have heard, Larry Wall gave a speech recently declaring
the goal of releasing Perl 6 this year, 2015. Honestly, there
is little chance of me using Perl 6 until it has a good, working
DBI.

This goes for me, too, and many, many other people too, I’ve little doubt.

And in that case, there would/should be a discussion about what form this DBI
for Perl 6 should take.

Personally I think one of the most important design changes DBI should make is
that DBI becomes an API spec that drivers/engines must conform to in order to be
certifiably compatible.  Part of the API is that user code can query the
driver/engine to ask, "do you implement DBI" or "do you implement this version
of the DBI API" etc.

DBI should not be an actual code layer that applications have to go through in
order to talk with the driver/engine, as it is now.

However, there can exist Perl 6 roles or other shared libraries that a
driver/engine may optionally use to help it implement the API rather than
rolling its own.

Think of the kind of revolution that PSGI brought by working this way, just
defining an API or protocol to conform to, rather than "being" a module that
everything had to use.  DBI should do the same thing.

The actual details of the API / common interface are an orthogonal matter.  The
key thing I'm looking for is no mandatory shared code between engines/drivers.

-- Darren Duncan

Reply via email to