Forgot to post this a while back. Darn “Dan Hanks”:http://www.brainshed.com gave me this module to look at. He and I regularly exchange cool stuff, but this one really has me thinking. “SQL::Preproc”:http://search.cpan.org/~darnold/SQL-Preproc-0.10/Preproc.pod is a source filter that creates new SQL language elements in Perl.
I’m really impressed by the look of the code with SQL as a native element. I know this is something you’d be able to do pretty easier in certain languages, and especially in Perl6, but in Perl5 it kind of scares me. When it comes to source filters, I had “a bad experience” with one once. Using a source filter does place some annoying constraints on the code as listed in the Supported syntax code, which one can live with easily, but can be handled nicer in something like Perl6.
From my rather casual review so far, they do seem to have decent constructs for the various forms of fetching data via the “DBI”:http://search.cpan.org/perldoc?DBI , which was a concern for me, as I use several different methods often in order to do various performance tuning operations, or to just fit in certain paradigms.
I haven’t had a task to play with this in a real situation yet, but it does pique the old curiosity, as I think bringing the concept of db access internal could be very nice in certain instances.