ANNOUNCE - Muldis::DB v0.0.0 released, in p5+p6

All,

I am pleased to announce the release of Muldis::DB version 0.0.0 for 
Perl 5 on CPAN.  You can see it now, with nicely HTMLized 
documentation, at:

   http://search.cpan.org/dist/Muldis-DB/

This is the first formal release of Muldis::DB, which began 
development last year (under the temporary name of "QDRDBMS") as a 
rewrite of my previously released but never functional "Rosetta" 
project.

Muldis::DB is implemented as a library or open-ended framework for 
use by larger frameworks or applications, and is a DBMS resource to 
them.  This project comes in twin Perl 5 and Perl 6 versions which 
are feature identical; the former is for use in today's systems, and 
the latter is for longer term use; if there is a case for doing so, 
some parts may be moved to other languages later such as C.

The equivalent Perl 6 version of Muldis::DB to the CPAN release is 
bundled with the "Pugs" ( http://www.pugscode.org/ ) implementation 
of Perl 6, and its release to CPAN follows Pugs' schedule. 
Meanwhile, you can see it in the ext/Muldis-DB/ sub-directory of 
Pugs' version control.

With both initial versions, Muldis::DB has zero external dependencies 
but for Perl/Pugs itself and what is bundled with it; this should 
ease installation.

If you want to read all the Muldis::DB documentation that exists now, 
I recommend doing so in this order:

   1. http://search.cpan.org/src/DUNCAND/Muldis-DB-0.0.0/README
   2. (opt) http://search.cpan.org/src/DUNCAND/Muldis-DB-0.0.0/Changes
   3. http://search.cpan.org/dist/Muldis-DB/lib/Muldis/DB.pm
   4. (opt) http://search.cpan.org/dist/Muldis-DB/lib/Muldis/DB/Copying.pod
   5. http://search.cpan.org/dist/Muldis-DB/lib/Muldis/DB/AST.pm
   6. http://search.cpan.org/dist/Muldis-DB/lib/Muldis/DB/Language.pod
   7. (opt) http://search.cpan.org/dist/Muldis-DB/lib/Muldis/DB/Validator.pm
   8. (opt) 
http://search.cpan.org/dist/Muldis-DB/lib/Muldis/DB/Engine/Example.pm
   9. http://search.cpan.org/dist/Muldis-DB/lib/Muldis/DB/SeeAlso.pod
   10. (opt) http://search.cpan.org/src/DUNCAND/Muldis-DB-0.0.0/TODO
   11. (opt) anything else

The "README" file above includes the urls of the public version 
control systems that host the development of Muldis::DB.  The Perl 5 
version is hosted in a public GIT repository hosted by Sam "Mugwump" 
Vilain, for which I am thankful.  The Perl 6 version is hosted in the 
same public Subversion repository as Pugs.

Muldis::DB defines and implements a computationally complete 
programming language with integrated relational database 
functionality.  It is an open-ended framework with a separate 
programmatic API and pluggable implementing engines, one of which is 
bundled with the core so it works out of the box.  The framework is 
intentionally similar to the DBI framework in organization.

Muldis::DB implements a D language (named "Muldis D") as defined by 
Hugh Darwen and Chris Date, and presents a superior interface for 
working with the relational model of data, contrasted with SQL. 
Anyone familiar with SQL or the relational model, or just programming 
in general, should find it easy to learn.

One general strength of Muldis D (truly relational) over SQL 
(quasi-relational) is that there is next to no object-relational 
impedence mismatch since the true relational model can natively 
represent user-defined complex data type structures, constraints, and 
operators; there is no need for "object-relational mappers", except 
for their role in tighter host language integration.

Another general strength of Muldis D is that any arbitrary business 
rules can be cleanly expressed as constraints on a database, so it is 
easier to trust a database to ensure its data state or transitions 
are always conformant to business rules, without hoisting such 
integrity matters to the application, where it is a lot more 
difficult to do it reliably.

Since a D language can represent anything, a SQL database and/or SQL 
features can also be emulated over one, which helps with legacy 
migration; similarly, as much as is possible, existing SQL engines 
can be used to implement Muldis DB over top of, in which case Muldis 
DB acts as a SQL generator to access pre-existing databases in new 
applications.

Conceptually speaking, Muldis::DB is either a replacement for DBI, or 
a replacement for any SQL DBMS itself, depending on how you use it; 
out of the box it replaces both, but plug-in bridges can be made that 
bridge to either.

Taking the Perl 6 development process as a model, Muldis D has an 
authoritative human-readable design document (the Language.pod file), 
which is analagous to the Perl 6 Synopsis documents, and one or more 
separate conforming implementations (the other files).  It is very 
feasible that Muldis D could have multiple implementations, over any 
languages, besides the 2 (Perl 5 and Perl 6) that exist now.

More information is in the Muldis::DB documentation.

I would probably like to say that Muldis::DB would be a panacea to 
all your database ills, but instead I see it more like Muldis::DB 
should provide a more solid skeleton on which to build the solutions 
to all your database ills than are any other solutions.  I will 
contribute to the solutions as best I can.

Several public email-based forums for Muldis::DB now exist (with 
public archives), all of which you can reach via 
http://mm.DarrenDuncan.net/mailman/listinfo (note that Mailman's 
monthly password reminder email is turned off).  There are currently 
3, for 'announce', 'devel', 'users', modelled after the main lists 
for DBI.

I invite you to join one or more of these lists (if you haven't 
already), to better facilitate discussion, support, and group 
development.

As of this version-zero release, Muldis-DB is officially in pre-alpha 
development status.  A lot of documentation and functionality is 
present, but a lot isn't.  What is mostly done is the higher level 
documentation plus an alpha-quality but fundamentally stable public 
API implementation.  What is mostly undone is the reference engine 
implementation, the test suite, and documentation of the API details. 
What is already present should be sufficient to begin study of 
Muldis-DB such that it can actually be put to use within the next few 
weeks or months as Muldis-DB is fleshed out.  Also, it should be 
possible now to start writing code that uses or extends it.

To conclude, I would be very greatful for any and all kinds of 
assistence with the Muldis::DB framework that you can provide, which 
includes building or sponsoring features and extensions.

Probably the very first kind of help that I could use the most is 
with writing cookbook-type examples of using Muldis::DB and/or FAQ 
documents.  This both helps people learn how to use it in an 
effective manner, and also helps flesh out deficiencies in 
Muldis::DB.  Both the "how do I define this kind of database" variety 
and "how do I express this SQL in Muldis D" variety are helpful. 
These examples would be released as a Muldis::DB::Cookbook 
distribution.

I also welcome general feedback, constructive criticism, suggestions, 
corrections, and questions.

Note that I prefer any responses to happen on-list, or that you sign 
up to and post to a muldis-db list (only list subscribers may post), 
so that that and any replies can be for the group's benefit, and to 
save me from repeating the same answers ad nauseum.  Unless the 
response is not suitable for public discourse, in which case, sure, 
go private email; ditto if you're not sure about appropriateness.

Thank you in advance.

-- Darren Duncan
0
darren
6/21/2007 9:09:18 PM
perl.perl6.users 1545 articles. 0 followers. Follow

0 Replies
1550 Views

Similar Articles

[PageSpeed] 57

Reply:

Similar Artilces:

0.0.0.0
Can someone tell me the function of this scan? FWIN,2001/08/28,20:06:43 -6:00 GMT,0.0.0.0:800,255.255.255.255:800,UDP "Ben" <notben@home.com> wrote in message news:9mhion$2hf9$1@news.grc.com... > Can someone tell me the function of this scan? > FWIN,2001/08/28,20:06:43 -6:00 GMT,0.0.0.0:800,255.255.255.255:800,UDP Ben, I haven't a clue. 800 TCP mdbs_daemon 800 UDP mdbs_daemon http://www.robertgraham.com/pubs/firewall-seen.html http://www.robertgraham.com/pubs/firewall-seen.html#3.6 http://www.robertgraham.com/pubs/firewall-seen.html#3.2 -- ...

0.0.0.0 ????
Obviously a local IP, but what are its functions/purpose? Thanks for educating the uneducated. In article <MPG.18bf7ade16e851cb989680@news.grc.com>, shr@p.com says... > > > Obviously a local IP, but what are its functions/purpose? > > Thanks for educating the uneducated. > Any available adapter - i.e. not bound to specific IP address. -- Bloated Elvis In article <MPG.18bf7ade16e851cb989680@news.grc.com>, shr@p.com says... > > > Obviously a local IP, but what are its functions/purpose? > > Thanks for educating the une...

63.0.0.0.0/255..0.0.0
Has anyone ever heard of this or know where it goes to.It was asking permission to act as a server? Thanks in advance for any help. "pb" <nothing@nomail.com> wrote in message news:9pa1u4$38b$1@news.grc.com... > Has anyone ever heard of this or know where it goes to.It was asking > permission to act as a server? Thanks in advance for any help. If it shows in your firewall log, can you post a copy of it? -- � -- Robert grc.com forum FAQ - http://grc.com/discussions.htm grc.com forum quick reference - http://grc.com/nntpquickref.htm grc.com forum disclaim...

Whoops! v0.0.0.2 was BROKEN! v0.0.0.3 is now posted
Gang... When I "Daniel" and "Lawne Kemp"'s all getting 0 memory results I suddenly realized that I had left the "FORCE ZERO" testing code active in that build! :( Sorry. The one that's up now, calling itself v0.0.0.3, DOES report what RAM it sees... but not yet with the improved RAM finder. Thanks! -- ________________________________________________________________ Steve... working on SpinRite v6.1 https://www.grc.com/dev/sr6.1/ Same laptop (Fujitsu Siemens Lifebook T Series), booting from MS-DOS 7.1 = and pressing F5 to skip co...

0.0.0.0:80 listening, how to release/stop?
Hi sorry if this is a bit basic but I hope someone can give me a quick answer after several hours of my trying. I have ZoneAlarm running on Win2k Prof via a NetGear 614v2 router with cable modem. I have freeware SMTP (Argosoft Email server) and Web application (DeskNow, port 82) runnning but none are setup on port 80. A Shields up shows the port as stealth which is great but the netstat command shows port 80 as listening 0.0.0.0:80. I only noticed this when I installed DeskNow and got an error that it could not use port 80 as it was already in use. I have blocked port 80 at the ...

IP Address 0.0.0.0.0
Some Agent which crosses proxy (MS ISA proxy) are register to the database with 0.0.0.0. When the agent send a request to the server for register, the field ContactAddress has 0.0.0.0 .0 The same PC - Agent without passing a proxy (another location) send a good ContactAdress IP when it register to the server. (Proxy or not) how agent defined addresses IP before to send for registration ? (Locally, with a service network, patchlink network) christian Astinx, can you post the agent update log? -- Shaun Pond PatchLink Update Agent.log 2006/10/23 10:45:14.033...

!27.0.0.1 vs. 0.0.0.0
I can use any number of tools to see what ports I have listening and/or connected. But among the *Listening* ports, some are 127.0.0.1 and some are 0.0.0.0. What is the difference between 127.0.0.1 and 0.0.0.0 ? Since I've got both - there MUST be a difference. Thanks, Alan 0.0.0.0 stands for all interfaces (example: yourIPaddress,127.0.0.1-127.254.254.254) 127.0.0.1 stands for local interface only (127.0.0.1) > 0.0.0.0 stands for all interfaces > (example: yourIPaddress,127.0.0.1-127.254.254.254) > > 127.0.0.1 stands for local interface only (127....

ESET NOD32 Antivirus v4.0.417.0 released / ESET Smart Security v4.0.417.0 released
<http://www.eset.com/download/registered_software.php> No changelogs available at this time. Installing over top is OK, as per ESET. --=20 Randy <http://msmvps.com/blogs/siljaline/default.aspx> In article <gqurnd$k8j$1@news.grc.com> on Wed, 1 Apr 2009 00:48:21 - 0400, Randy Knobloch wrote: > <http://www.eset.com/download/registered_software.php> > > No changelogs available at this time. Change log here: http://www.eset.com/support/news.php -- Seth Goodman On Wed, 1 Apr 2009 09:09:31 -0400, Seth Goodman <seth_news@yahoo.com...

1.5.0.10/2.0.0.2 release update... respinning for 2.0.0.2 rc5, new target release date Tue. 2/27
This is a multi-part message in MIME format. --------------050707070507020409050603 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit A new blocker was discovered recently what will require a respin for Firefox 2.0.0.2: Bug 370521 <https://bugzilla.mozilla.org/show_bug.cgi?id=370521> -- TextArea not firing onchange event (edit <javascript:toggleField('summary');>) was caused by the checkin for: Bug 357684 <https://bugzilla.mozilla.org/show_bug.cgi?id=357684> -- onchange on ...

Announcing MozillaBuild 2.0.0 Release
After a long wait, I am pleased to announce the final release of MozillaBuild 2.0.0. http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/MozillaBuildSetup-Latest.exe Much has changed since version 1.11.0, hence the change in major version number. It is STRONGLY advised that this not be installed over top of a previous installation. SIGNIFICANT CHANGES * Added support for MSVC2015 and dropped support for MSVC <2013, WinSDK <8.1, and MSVC Express Edition. - MSVC Community Edition is now the recommended free compiler option * Added minTTY 1.1.3 as an optional cons...

Announcing MozillaBuild 2.0.0 Release
After a long wait, I am pleased to announce the final release of MozillaBuild 2.0.0. http://ftp.mozilla.org/pub/mozilla.org/mozilla/libraries/win32/MozillaBuildSetup-Latest.exe Much has changed since version 1.11.0, hence the change in major version number. It is STRONGLY advised that this not be installed over top of a previous installation. SIGNIFICANT CHANGES * Added support for MSVC2015 and dropped support for MSVC <2013, WinSDK <8.1, and MSVC Express Edition. - MSVC Community Edition is now the recommended free compiler option * Added minTTY 1.1.3 as an optional cons...

0.0.0.0 IP ADRESS
Hi !I cant understanding. why the my pc documets using 0.0.0.0 ip adress out for internet ? expecially inetsvc.exe and I got active ports program. I see that, the some of the xp (server 2003) documents using 0.0.0.0 ip adress... is there anyone for help this subject. ? and our server (they have dedicated server) no giving us any information about their company. anyone can be know that why ? and I checked my pc with netstat - r ! its seem so different information that my adsl information...thanksARKIN Explain your problem better please, would love to help you on this subject.Bryan Samp...

IP address 0.0.0.0
I am curious to find out entries in my router log (Linksys) which have LAN IP of 0.0.0.0 and destination URL/IP of �. Does nayone know what it means? Is this any hacker activity? Sam <nspam@nospam.net> wrote: > I am curious to find out entries in my router log (Linksys) which > have LAN IP of 0.0.0.0 and destination URL/IP of �. Does nayone know > what it means? Is this any hacker activity? http://www.geocities.com/merijn_bellekom/new/netstatan.html -- Robert GRC newsgroup tips - http://www.imilly.com/noregrets.htm List of Lists - http://lists.gpick.com/ Privac...

Firefox 2.0.0.6 Reverts back to 2.0.0.5 reinstalls 2.0.0.6, wipes out user settings
Firefox is turning into a piece of crap. First, there is only 1 profile, the default profile. Second, after the first 2.0.0.6 update wiped out the profile settings (again), the automatic check for updates was turned off. This morning the customized profile settings went MIA again, Firefox decided it was version 2.0.0.5 (per the help, about firefox) and automatically downloaded 2.0.0.6; even though 2.0.0.6 had already been installed on July 31. It now thinks it is 2.0.0.6, the home page and other profile settings have been reset, and automatic updates turned off for everyt...

Is 2.0.0.5 a bad release (like 2.0.0.3 was) ?
I'm seeing a lot of problems reported here with the upgrade to 2.0.0.5. Mostly it seems about add-ons not working and other features suddenly breaking. I got my first upgrade prompt last night and declined it. I think I'll continue declining it. Is there some kind of status page we can look at where known major bugs in the current build are listed out in a short list (rather than trolling through the bugzilla DB)? Maybe such a place also acknowledges that they know it's a bad release and plan to issue a 2.0.0.6 shortly, and advise us to not update to 5. ~dd d ...

Web resources about - ANNOUNCE - Muldis::DB v0.0.0 released, in p5+p6 - perl.perl6.users

Resources last updated: 12/19/2015 1:47:12 AM