FOSDEM is the biggest free and non-commercial event organized by and for the community. Its goal is to provide Free and Open Source developers a place to meet. No registration necessary.


Interview: David Fetter

David Spetter will be speaking about PL/Parrot at FOSDEM 2011.

Could you briefly introduce yourself?

I'm an employee of VMware and co-founder of PostgreSQL Experts, based in the San Francisco Bay Area and have worked in various commercial enterprises, non-profits and educational institutions. I've used PostgreSQL, Oracle, MySQL, Perl, PHP, PL/SQL, PL/PgSQL, PL/Perl and (of course!) vim extensively in transaction processing and business intelligence systems.

In my free time, I brew beer, ride my bicycle, and help run several organizations for computer professionals including the Oakland Perl Users' Group, the San Francisco PostgreSQL Users' Group and the San Francisco Perl Users' Group.

Oh, and by the time I get to FOSDEM, I'll be married to a wonderful woman named Sarah :)

Congratulations. What will you cover in your FOSDEM talk?

That would be telling. ;)

Allright :-) Then what would be your goal for giving this talk?

I'd like to continue to stir interest in RDBMSs as programming platforms, a side of them that is not emphasized enough.

PL/Parrot is still in development. For which kind of use cases would you say it's ready today?

As with Parrot itself, this continues to evolve over time. PL/Parrot is now at a point where making domain-specific PLs is in reach.

Having a full-blown virtual machine in the database is quite empowering. Do you expect PL/Parrot extensions to grow beyond only triggers and stored procedures?

The major challenges to such growth are not technical. Instead, they lie in the agreements the PostgreSQL project and the Parrot project can come to over licensing. To become integral to the PostgreSQL project, for example, by replacing the yacc grammar for SQL with Parrot constructs, the aforementioned Parrot code would need to be available to the PostgreSQL project under a permissive license such as the 2-clause BSD or MIT. To date, we have not started such discussions. That the Parrot project requires copyright assignment makes such discussions realistic.

I do take issue with your characterization of triggers and stored procedures as, "only." In PostgreSQL, they are powerful and subtle tools.

Point taken. Conceptually, how does PL/Parrot differ from PL/Perl?

PL/Parrot is a toolkit for creating interoperable languages. While it has its own language, PL/PIR, I don't expect anyone to use that by itself to write functions, as it's roughly comparable to assembly language.

How do you see PL/Perl evolve in 2011?

I'd like to see some of the voodoo and magic in the implementation go away.

Are there any Perl (or Perl6) features that you find especially useful in programming triggers and stored procedures?

In PL/PerlU (no, that's not a typo), the killer feature is CPAN. In PL/Perl6, probably grammars.

You're a regular at FOSDEM. How would you describe it in one sentence?

Biggest, best community FLOSS event in Europe, bar none!