I am interested in writing a better SQL mapping tool for clojure. Because I 
am not convinced that simple SQL composition is effective, for various 
reasons. I rather have some kind of logic construct that I could use to 
generate SQL from. My main concern is to eliminate the hard boundary 
between the RDBMS and the rest of the code. Any given logic construct would 
a candidate to be translated into SQL or executed inside the JVM.

One option that I have been considering is a production rule system. The 
most popular are based on the rete algorithm. I know there are a few open 
source productions systems out there, but I think translating into SQL from 
an established rule language may be too complicated. At this point I plan 
to use the language extensions proposed by Anurag Acharya, that eliminate 
sequential guards and adds collection support. The reason is that I want to 
process the rules in parallel, and I want to be as close to SQL as 
possible. Clojure pure functions could also be called from within a 
production rule.

The use case I have in mind is regular IT apps, not necessarily complex 
decision systems. I just find myself writing too much code, and often an 
SQL a clojure procedure and a function in the GUI will have some aspect of 
the same business rule embedded in the code. A layered approach helps to 
alleviate the problem, but it still persists. More support for declarative 
code may be the answer. But other than SQL or LINQ and other minor 
examples, there is little support for declarative code for average IT 
systems.

Anyone has any ideas/opinions?

I would appreciate any feedback.

Arturo Hernandez

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to