[Dbix-class] ANNOUNCE - Language::MuldisD v0.4.0 released
Darren Duncan
darren at DarrenDuncan.net
Fri Aug 10 02:25:30 GMT 2007
All,
I am pleased to announce the release of Language::MuldisD (the formal
Muldis D language specification) version 0.4.0 on CPAN. You can see
it now, with nicely HTMLized documentation, at:
http://search.cpan.org/dist/Language-MuldisD/
This is a semi-major release, though I am not announcing it too
widely, but just to the Muldis-DB and TTM and DBIx-Class lists
(others can just notice it on CPAN).
Perhaps the single most significant advance in this release compared
to release 0.3.1 is the addition of PerlHosted.pod, and the rewrite
of Grammar.pod.
Grammar.pod is now feature-complete (sans adding features), and it
actually compiles under Perl 6 (it is now an actual Perl 6 grammar),
though it hasn't been tested at all. Also, an EXAMPLES section was
added which shows code fragments for declaring each kind of Muldis D
core data type. Note that Grammar.pod isn't directly relevant to
Perl itself, save for illustrative purposes, and is more likely to be
relevant to, eg, a Parrot Hosted Muldis D implementation, where
Muldis D is compiled from text files like a normal language.
PerlHosted.pod is essentially an AST specification, and describes the
recommended way to specify Muldis D data and code within a Perl 5 or
Perl 6 program; structurally, it is a tree constructed mainly of Perl
arrays. This also doubles as the first cut of my suggestion for a
general-purpose AST for use by ORMs and other DBMS using or
implementing programs, as a portable and powerful way to specify
database queries and results. Unlike custom-object-based ASTs, this
should be relatively simple to use, doesn't have any non-Perl
dependencies (no license hangups), and should perform well.
(In the wake of this, I expect the "Literals.pm/AST.pm" portion of
the separate Muldis::DB distribution to be going away very soon now.)
The current release of the AST proposal just specifies how to define
values of scalar and collection data types, the latter including
whole rowsets or databases.
Still for me to do, and my next task (for release 0.5.0), is to flesh
out other parts of the language spec, including to say how you
actually use the AST to specify queries or constraints; that should
round out my AST proposal.
See the "Changes" file for more details of what changed in the last
few releases.
Thank you. -- Darren Duncan
More information about the DBIx-Class
mailing list