Doost status update
Marcin Kuszczak
aarti_please_no at spam_interia.pl
Thu May 1 02:19:33 PDT 2008
Jason House wrote:
> Since doost is based on boost, it'd be nice to see a simple list of which
> boost modules have been ported. This helps those of us already familiar
> with various boost libraries...
>
> PS: I'm glad to see doost is alive and well!
Well, currently scope of library is much wider than only libraries ported
from Boost or inspired by Boost. While I was porting program_options I
noticed that originall library can be easily extended with e.g. writing
options back into physicall storage. D just allows to do much more, still
having implementation quite simple.
Now I am working on D version of part of U++ library, which is intended to
allow type safe database queries.
(http://www.ultimatepp.org/src$Sql$SqlExp$en-us.html)
Imagine that you put database schema into file:
http://www.dsource.org/projects/doost/browser/trunk/examples/database/TestSchema.schema
and then you use in your program typesafe versions of sql:
http://www.dsource.org/projects/doost/browser/trunk/examples/database/PackageTest.d
And simple cases work already quite well :-)
I just see problem with sql expressions. In U++ it is done like below:
Select(BOOK.AUTHOR).WHERE((BOOK.ID == 100) && (BOOK.TITLE == "Dot"));
In D it is not possible (unfortunately) and must be written like below:
Select(BOOK.AUTHOR).WHERE(land(leq(BOOK.ID, 100), leq(BOOK.TITLE, "Dot")));
I hope that maybe Walter someday will reconsider adding extended operators
overloading as addition to the current system.
--
Regards
Marcin Kuszczak (Aarti_pl)
-------------------------------------
Ask me why I believe in Jesus - http://www.zapytajmnie.com (en/pl)
Doost (port of few Boost libraries) - http://www.dsource.org/projects/doost/
-------------------------------------
More information about the Digitalmars-d-announce
mailing list