From: | Darren Duncan <darren(at)darrenduncan(dot)net> |
---|---|
To: | pgsql-announce(at)postgresql(dot)org |
Subject: | ANN - Muldis D v0.130.0 - no more $ sigils |
Date: | 2010-06-21 04:03:03 |
Message-ID: | 4C1EE477.1060505@darrenduncan.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-announce |
Greetings,
I am pleased to announce that version 0.130.0 of the specification of the Muldis
D language, for object-relational databases, has been released on CPAN.
The largest change since last month's spec version 0.129.1 is the elimination of
the "$" sigil that was used semi-gratuitously to mark data-entities (variables,
parameters, attributes, named expression nodes). These are now regularly
formatted as barewords instead, like most languages and SQL, but unlike Perl.
Another significant change is renaming a syntax shorthand from ">foo" to "=>foo"
for clarity; it means "foo => foo" and has nothing to do with "greater-than".
A few other improvements were made to the concrete grammars as well.
Here are 2 versions of the same code to illustrate both changes, with the new
version above and the old version below; it is an atomic stored procedure that
performs and returns the result of a query:
recipe count_heads (&count : NNInt, search : Text,
people ::= fed.data.db1.people) {
with value-filter filt (Bool <-- topic : Tuple, search : Text) {
.name like ('%' ~ search ~ '%')
}
count := r# (people where <nlx.lib.filt>( =>search ))
}
recipe count_heads (&$count : NNInt, $search : Text,
$people ::= $fed.data.db1.people) {
with value-filter filt (Bool <-- $topic : Tuple, $search : Text) {
$.name like ('%' ~ $search ~ '%')
}
$count := r# ($people where <nlx.lib.filt>( $>search ))
}
Since the prior announcement, the introduction page for the language had a
number of significant updates and additions of its own, including the additions
of some data-manipulating examples side-by-side with the SQL versions, plus a
complete self-contained hello-world type program that interacts with the user:
http://muldis.com/Muldis_D.html
See that url for other useful links, including to the language spec itself.
As a reminder, no Muldis D implementation actually exists yet, so you can't
actually /run/ any code. But sometime around September of 2010 I will expect to
have created a substantially complete self-contained reference implementation of
Muldis D, at which point you /will/ be able to run code. Then, before the end
of 2010, I expect to have made a translation layer for the Postgres DBMS so that
you can use Muldis D to write anything you currently write in SQL or PL/pgSQL.
Collaboration is always appreciated.
Good day. -- Darren Duncan
From | Date | Subject | |
---|---|---|---|
Next Message | Josh Berkus | 2010-06-24 18:46:16 | Warning: End-of-Support for 7.4, 8.0 |
Previous Message | David Fetter | 2010-06-21 04:02:34 | == PostgreSQL Weekly News - June 20 2010 == |