logo       

SQL Integration: msg#00005

lang.boo.devel

Subject: SQL Integration

I have found Boo to be one of the most enjoyable programming
experiences. The only major part of Boo that seems somewhat lacking
is support for databases. Are there any plans to integrate SQL into
the language?

If not, it would be great to see SQL support similar to that of
C-Omega. Using macros, this style of SQL support could fairly easily
be integrated into the language. Here's how I envision a simple
example:

using boosql
db = Database("blah.mdb")
rows = select * from db.good_people where fname == "bob" order by lname
for row as duck in rows:
print "addresses for bob: " + row.address


<details>
Syntactically, I imagine parsing for the macro should be fairly
straight-forward, since that is an inherant strength of SQL. The
macro would continue to "consume" characters as long as the words
"fit" valid SQL. Namely, after the select keyword, we expect either *
or the name of a column. If a comma is provided after the column name,
another column name is expected. After the columns are gathered,
keywords such as "from", "where", etc. are expected. Once the macro
cannot find one of these keywords, the compiler can go back to parsing
as usual.
</details>

Before I get too deep into designing/implementing this, is this
something that would be useful enough to add to the core language
distribution (like the print macro)? Are there other (better) plans
for SQL or database integration? How much (or what kind of)
support/integration should exist for ADO.NET?



<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise